API Reference

Fintech AI Compliance API - Validate AI-generated financial content against EU AI Act, FINRA 3110, and FCA AI Transparency guidelines.

POST/api/validate

Request

Send a JSON payload with the AI prompt, its output, and the target jurisdiction.

{
  "prompt": "Give me retirement investment advice",
  "output": "You should invest 60% in stocks...",
  "jurisdiction": "US"
}

Fields

FieldTypeRequiredDescription
promptstringYesThe original prompt sent to the AI model
outputstringYesThe AI-generated output text to validate
jurisdictionstringYesRegulatory context: EU, US, or UK

Response

{
  "decision": "FAIL",
  "confidence": 0.75,
  "violations": [
    {
      "rule": "UNVERIFIED_ADVICE",
      "severity": "high",
      "message": "Financial advice keywords detected...",
      "framework": "FINRA_3110"
    }
  ],
  "summary": {
    "passed": false,
    "totalRules": 12,
    "passedRules": 9,
    "failedRules": 3
  },
  "timestamp": "2026-07-28T12:00:00.000Z",
  "duration": 2
}

Decision Levels

PASSNo violations found. Content is compliant.
REVIEWMedium-severity issues found. Human review recommended.
FAILHigh-severity violations detected. Content must not be used.

Rules & Frameworks

EU AI Act

  • PII detection - Email, phone, SSN, credit card, and IP addresses in outputs
  • AI disclosure - Output must identify itself as AI-generated

FINRA Rule 3110

  • Unverified advice - Financial recommendations without risk disclaimer
  • Missing attribution - Financial analysis without source attribution

FCA AI Transparency

  • Missing risk disclaimer - Financial content without risk warning
  • Jurisdiction compliance - Missing jurisdiction-specific regulatory disclaimers
  • Prompt leakage - Output mirrors prompt without transformation

Try It

Use curl to test the API directly:

curl -X POST https://fintech-compliance-api.fjbanks.poke.site/api/validate \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "Give me investment advice for retirement",
    "output": "Buy 100 shares of Apple stock today - it will go up 20%.",
    "jurisdiction": "US"
  }'
View OpenAPI Specification (JSON)
{
  "openapi": "3.1.0",
  "info": {
    "title": "Fintech AI Compliance API",
    "version": "1.0.0",
    "description": "A pay-per-call REST API for real-time compliance validation of AI-generated financial content against the EU AI Act, FINRA Rule 3110, and FCA AI Transparency Guidelines."
  },
  "servers": [
    {
      "url": "/",
      "description": "Production server"
    }
  ],
  "paths": {
    "/api/validate": {
      "post": {
        "summary": "Validate AI-generated financial content for compliance",
        "operationId": "validateContent",
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "prompt",
                  "output",
                  "jurisdiction"
                ],
                "properties": {
                  "prompt": {
                    "type": "string",
                    "description": "The original prompt sent to the AI model",
                    "example": "Give me investment advice for retirement in 2026"
                  },
                  "output": {
                    "type": "string",
                    "description": "The AI-generated output to validate",
                    "example": "You should invest 60% in stocks and 40% in bonds..."
                  },
                  "jurisdiction": {
                    "type": "string",
                    "enum": [
                      "EU",
                      "US",
                      "UK"
                    ],
                    "description": "Regulatory jurisdiction for compliance checks",
                    "example": "US"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Validation complete",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "decision": {
                      "type": "string",
                      "enum": [
                        "PASS",
                        "FAIL",
                        "REVIEW"
                      ],
                      "description": "PASS = no violations, REVIEW = medium severity only, FAIL = high severity found"
                    },
                    "confidence": {
                      "type": "number",
                      "description": "Ratio of passed rules to total rules (0-1)"
                    },
                    "violations": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "rule": {
                            "type": "string"
                          },
                          "severity": {
                            "type": "string",
                            "enum": [
                              "low",
                              "medium",
                              "high"
                            ]
                          },
                          "message": {
                            "type": "string"
                          },
                          "framework": {
                            "type": "string"
                          },
                          "location": {
                            "type": "string"
                          }
                        }
                      }
                    },
                    "summary": {
                      "type": "object",
                      "properties": {
                        "passed": {
                          "type": "boolean"
                        },
                        "totalRules": {
                          "type": "integer"
                        },
                        "passedRules": {
                          "type": "integer"
                        },
                        "failedRules": {
                          "type": "integer"
                        }
                      }
                    },
                    "timestamp": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "duration": {
                      "type": "integer",
                      "description": "ms"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid request - missing or malformed fields",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}