Lightspark · Schema
Verification
CompanyPaymentsCross-Border PaymentsStablecoinsBitcoinLightning NetworkEmbedded FinanceAgentic PaymentsCardsKYCFinancial ServicesForeign Exchange
Properties
| Name | Type | Description |
|---|---|---|
| id | string | Unique identifier for this verification |
| customerId | string | The ID of the customer being verified |
| verificationStatus | object | |
| errors | array | List of issues preventing verification from proceeding. Empty when verificationStatus is APPROVED or IN_PROGRESS. |
| createdAt | string | When this verification was created |
| updatedAt | string | When this verification was last updated |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/lightspark/main/json-schema/lightspark-verification-schema.json",
"title": "Verification",
"x-generated": "2026-10-12",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/lightspark-kyc-kyb-verifications-api-openapi.yml#/components/schemas/Verification",
"type": "object",
"required": [
"id",
"customerId",
"verificationStatus",
"errors",
"createdAt"
],
"properties": {
"id": {
"type": "string",
"description": "Unique identifier for this verification"
},
"customerId": {
"type": "string",
"description": "The ID of the customer being verified"
},
"verificationStatus": {
"$ref": "#/$defs/VerificationStatus"
},
"errors": {
"type": "array",
"description": "List of issues preventing verification from proceeding. Empty when verificationStatus is APPROVED or IN_PROGRESS.",
"items": {
"$ref": "#/$defs/VerificationError"
}
},
"createdAt": {
"type": "string",
"format": "date-time",
"description": "When this verification was created"
},
"updatedAt": {
"type": "string",
"format": "date-time",
"description": "When this verification was last updated"
}
},
"$defs": {
"DocumentType": {
"type": "string",
"enum": [
"PASSPORT",
"DRIVERS_LICENSE",
"NATIONAL_ID",
"PROOF_OF_ADDRESS",
"BANK_STATEMENT",
"TAX_RETURN",
"CERTIFICATE_OF_INCORPORATION",
"ARTICLES_OF_INCORPORATION",
"ARTICLES_OF_ASSOCIATION",
"STATE_REGISTRY_EXCERPT",
"GOOD_STANDING_CERTIFICATE",
"INFORMATION_STATEMENT",
"INCUMBENCY_CERTIFICATE",
"BUSINESS_LICENSE",
"SHAREHOLDER_REGISTER",
"POWER_OF_ATTORNEY",
"UTILITY_BILL",
"ELECTRICITY_BILL",
"RENT_OR_LEASE_AGREEMENT",
"DIRECTOR_REGISTRY",
"TRUST_AGREEMENT",
"STATE_COMPANY_REGISTRY",
"PARTNERSHIP_CONTROL_AGREEMENT",
"PARTNERSHIP_AGREEMENT",
"SELFIE",
"OTHER"
],
"description": "Type of identity or business verification document. Document types are grouped by verification category:\n**Identity** — PASSPORT, DRIVERS_LICENSE, NATIONAL_ID\n**Business — Legal presence** — CERTIFICATE_OF_INCORPORATION, ARTICLES_OF_INCORPORATION, ARTICLES_OF_ASSOCIATION, STATE_REGISTRY_EXCERPT\n**Business — Control structure** — DIRECTOR_REGISTRY, TRUST_AGREEMENT, STATE_COMPANY_REGISTRY, PARTNERSHIP_CONTROL_AGREEMENT\n**Business — Ownership structure** — SHAREHOLDER_REGISTER, TRUST_AGREEMENT, PARTNERSHIP_AGREEMENT\n**Proof of address** — UTILITY_BILL, RENT_OR_LEASE_AGREEMENT, ELECTRICITY_BILL, BANK_STATEMENT, TAX_RETURN"
},
"VerificationError": {
"type": "object",
"required": [
"resourceId",
"type",
"reason"
],
"properties": {
"resourceId": {
"type": "string",
"description": "ID of the resource with the issue (Customer, BeneficialOwner, or Document)"
},
"type": {
"$ref": "#/$defs/VerificationErrorType"
},
"field": {
"type": "string",
"description": "Dot-notation path to the field with the issue. Present when type is MISSING_FIELD or INVALID_FIELD."
},
"acceptedDocumentTypes": {
"type": "array",
"items": {
"$ref": "#/$defs/DocumentType"
},
"description": "Document types that would satisfy this requirement. The integrator can upload any one of the listed types. Present when type is MISSING_LEGAL_PRESENCE_DOCUMENT, MISSING_CONTROL_STRUCTURE_DOCUMENT, MISSING_OWNERSHIP_STRUCTURE_DOCUMENT, MISSING_PROOF_OF_ADDRESS_DOCUMENT, MISSING_IDENTITY_DOCUMENT, INVALID_DOCUMENT, or EXPIRED_DOCUMENT.\n\n| Error Type | Accepted Document Types |\n|---|---|\n| MISSING_LEGAL_PRESENCE_DOCUMENT | CERTIFICATE_OF_INCORPORATION, ARTICLES_OF_INCORPORATION, ARTICLES_OF_ASSOCIATION, STATE_REGISTRY_EXCERPT |\n| MISSING_CONTROL_STRUCTURE_DOCUMENT | DIRECTOR_REGISTRY, TRUST_AGREEMENT, STATE_COMPANY_REGISTRY, PARTNERSHIP_CONTROL_AGREEMENT |\n| MISSING_OWNERSHIP_STRUCTURE_DOCUMENT | SHAREHOLDER_REGISTER, TRUST_AGREEMENT, PARTNERSHIP_AGREEMENT |\n| MISSING_PROOF_OF_ADDRESS_DOCUMENT | UTILITY_BILL, RENT_OR_LEASE_AGREEMENT, ELECTRICITY_BILL, BANK_STATEMENT, TAX_RETURN |\n| MISSING_IDENTITY_DOCUMENT | PASSPORT, DRIVERS_LICENSE, NATIONAL_ID |"
},
"reason": {
"type": "string",
"description": "Human-readable description of the issue"
}
}
},
"VerificationErrorType": {
"type": "string",
"enum": [
"MISSING_FIELD",
"INVALID_FIELD",
"MISSING_LEGAL_PRESENCE_DOCUMENT",
"MISSING_CONTROL_STRUCTURE_DOCUMENT",
"MISSING_OWNERSHIP_STRUCTURE_DOCUMENT",
"MISSING_PROOF_OF_ADDRESS_DOCUMENT",
"MISSING_IDENTITY_DOCUMENT",
"INVALID_DOCUMENT",
"EXPIRED_DOCUMENT",
"POOR_QUALITY_DOCUMENT",
"SUSPECTED_FRAUD_DOCUMENT",
"WRONG_DOCUMENT_TYPE",
"INCOMPLETE_DOCUMENT",
"UNREADABLE_DOCUMENT",
"DOCUMENT_VERIFICATION_FAILED",
"APPLICANT_SANCTIONED",
"APPLICANT_FRAUD",
"APPLICANT_CRIMINAL_RECORD",
"APPLICANT_REJECTED",
"MISSING_BENEFICIAL_OWNER",
"MISSING_CONTROL_PERSON",
"MISSING_GOOD_STANDING_DOCUMENT"
],
"description": "Type of verification error. The category-specific MISSING_*_DOCUMENT types indicate which document category is needed. Document quality types (POOR_QUALITY_DOCUMENT, SUSPECTED_FRAUD_DOCUMENT, etc.) indicate specific issues with uploaded documents. APPLICANT_* types indicate issues with the applicant themselves (sanctions, fraud, criminal records)."
},
"VerificationStatus": {
"type": "string",
"enum": [
"RESOLVE_ERRORS",
"PENDING_MANUAL_REVIEW",
"IN_PROGRESS",
"APPROVED",
"REJECTED",
"READY_FOR_VERIFICATION"
],
"description": "Current status of the KYC/KYB verification"
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/lightspark-verification"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.