Submit Application via Form

Submits a KYB application using flat form data structure. This endpoint is suitable for direct form submission or simple scenarios where all form fields are flattened without deep nesting. The server retrieves the questionnaire structure based on qnreIdentifierVersion and performs type conversion automatically.

Request

https://openapi.advance.ai/v1/business/applications/form
POST (application/json)

Request Header Parameters

Parameter

Description

Authorization

string Please use Token Authentication API to get your access token.
Format: Bearer {token}

Request Parameters

ParameterRequiredDescription
kybLevelTruestring The KYB verification level for this application.
applicantEmailFalsestring The email address of the applicant. Must be a valid email format.
qnreIdentifierVersionTruestring The questionnaire identifier and version used to define the form structure. The server uses this to retrieve the questionnaire schema and perform type conversion.
subjectEntriesTruearray List of form response items for the subject entity. Each item contains a question ID and its corresponding value.
declaredGroupsFalsearray List of declared entity groups (shareholders, directors, etc.). Each group contains multiple entries with their own form responses.

Request Parameters - Nested Objects

FormResponseItem

FieldRequiredDescription
questionIdTruestring The unique identifier of the question in the questionnaire.
valueTrueany The answer value for the question. The type depends on the question type defined in the questionnaire schema.

FormDeclaredGroupItem

FieldRequiredDescription
groupIdTruestring The unique identifier of the declared group (e.g., shareholders group, directors group).
entriesTruearray List of declared entry items within this group.

FormDeclaredEntryItem

FieldRequiredDescription
responsesFalsearray List of form response items for this declared entry.

Request Examples

curl -X POST "https://openapi.advance.ai/v1/business/applications/form" \
-H "Authorization: Bearer {Your Access Token}" \
-H "Content-Type: application/json" \
-d '{
  "kybLevel": "STANDARD",
  "applicantEmail": "[email protected]",
  "qnreIdentifierVersion": "kyb-standard-v1.0",
  "subjectEntries": [
    {
      "questionId": "company_name",
      "value": "Example Corp Ltd"
    },
    {
      "questionId": "registration_number",
      "value": "123456789"
    },
    {
      "questionId": "registered_country",
      "value": "SGP"
    }
  ],
  "declaredGroups": [
    {
      "groupId": "shareholders",
      "entries": [
        {
          "responses": [
            {
              "questionId": "shareholder_name",
              "value": "John Smith"
            },
            {
              "questionId": "share_ratio",
              "value": 25.5
            }
          ]
        }
      ]
    }
  ]
}'

Success Response

Response Description

FieldDescription
applicationIdstring The unique identifier of the created KYB application.
statusenum The current status of the application.
subjectCompanyobject The subject company information.
declaredCompaniesarray List of declared company entities.
declaredIndividualsarray List of declared individual entities.

Response.status

KYB Application Status

ValueDescription
PENDING_REVIEWApplication requires manual review.
PENDING_RESUBMISSIONApplication requires resubmission with corrections.
APPROVEDApplication has been approved.
REJECTEDApplication has been rejected.

Response.subjectCompany

FieldDescription
companyIdstring The unique company identifier.
externalIdstring External identifier provided by the client.
companyNamestring The registered name of the company.
registrationNumberstring The company registration number.
registeredCountrystring The country where the company is registered (ISO 3166-1 alpha-3).
registrationDatestring The registration date in ISO 8601 format.
legalTypeenum The legal entity type of the company.
legalAddressstring The registered legal address.
emailstring The company email address.
phonestring The company phone number.
taxIdstring The tax identification number.
leiCodestring The Legal Entity Identifier code.
websiteUrlstring The company website URL.
confirmedboolean Whether the company architecture is confirmed.
customFieldsarray List of custom field values.
attachedDocsarray List of attached document identifiers.
createdAtstring The creation timestamp in ISO 8601 format.
updatedAtstring The last update timestamp in ISO 8601 format.

Response.declaredCompanies[]

FieldDescription
companyIdstring The unique company identifier.
externalIdstring External identifier provided by the client.
companyNamestring The registered name of the company.
roleTypeenum The role type of this company in relation to the subject.
shareRationumber The ownership share ratio (percentage).
registrationNumberstring The company registration number.
registeredCountrystring The country where the company is registered.
registrationDatestring The registration date in ISO 8601 format.
legalTypeenum The legal entity type of the company.
legalAddressstring The registered legal address.
emailstring The company email address.
phonestring The company phone number.
taxIdstring The tax identification number.
leiCodestring The Legal Entity Identifier code.
websiteUrlstring The company website URL.
confirmedboolean Whether the company architecture is confirmed.
customFieldsarray List of custom field values.
attachedDocsarray List of attached document identifiers.
createdAtstring The creation timestamp in ISO 8601 format.
updatedAtstring The last update timestamp in ISO 8601 format.

Response.declaredIndividuals[]

FieldDescription
individualIdstring The unique individual identifier.
externalIdstring External identifier provided by the client.
firstNamestring The first name of the individual.
middleNamestring The middle name of the individual.
lastNamestring The last name of the individual.
legalNamestring The legal name of the individual.
aliasNamestring Any alias name used by the individual.
roleTypeenum The role type of this individual in the company.
individualTypeenum The type of individual (SHAREHOLDER or OFFICER).
shareRationumber The ownership share ratio (percentage).
companyIdstring The associated company identifier.
genderenum The gender of the individual (MALE, FEMALE, OTHER).
dobstring The date of birth in ISO 8601 format.
placeOfBirthstring The place of birth.
countryOfResidencestring The country of residence.
nationalitystring The nationality.
tinstring The Tax Identification Number.
taxResidenceCountrystring The country of tax residence.
emailstring The email address.
confirmedboolean Whether the individual information is confirmed.
customFieldsarray List of custom field values.
attachedDocsarray List of attached document identifiers.
createdAtstring The creation timestamp in ISO 8601 format.
updatedAtstring The last update timestamp in ISO 8601 format.

Enumerations

CompanyRoleTypeEnum

ValueDescription
UBOUltimate Beneficial Owner
SHAREHOLDERShareholder
REPRESENTATIVERepresentative
DIRECTORDirector
AUTHORIZED_PERSONAuthorized Person
OTHEROther
ACCOUNTANTAccountant
COMMISSIONERCommissioner
AUDITORAuditor
SECRETARYSecretary

CompanyLegalTypeEnum

ValueDescription
PRIVATE_LIMITED_LIABILITY_COMPANYPrivate Limited Liability Company
PUBLIC_LIMITED_LIABILITY_COMPANYPublic Limited Liability Company
LIMITED_LIABILITY_COMPANYLimited Liability Company
FOUNDATIONFoundation
ASSOCIATIONAssociation
COOPERATIVECooperative
LIMITED_PARTNERSHIPLimited Partnership
SOLE_PROPRIETORSHIPSole Proprietorship
FEDERATION_OF_FIRMSFederation of Firms
CIVIL_PARTNERSHIPCivil Partnership
GENERAL_PARTNERSHIPGeneral Partnership
PUBLIC_UTILITY_COMPANYPublic Utility Company
STATE_OWNED_COMPANYState-owned Company
COMPANY_LIMITED_BY_GUARANTEECompany Limited by Guarantee
SOCIETYSociety
NON_PROFIT_ORGANIZATIONNon-Profit Organization
BRANCH_OFFICEBranch Office
LIMITED_LIABILITY_PARTNERSHIPLimited Liability Partnership
TRUSTTrust
GOVERNMENT_ENTITYGovernment Entity
OTHERSOthers

KybIndividualTypeEnum

ValueDescription
SHAREHOLDERIndividual is a shareholder.
OFFICERIndividual is an officer (director, representative, etc.).

Response Examples

{
  "applicationId": "APP-2026052200001",
  "status": "PENDING_REVIEW",
  "subjectCompany": {
    "companyId": "COM-2026052200001",
    "externalId": null,
    "companyName": "Example Corp Ltd",
    "registrationNumber": "123456789",
    "registeredCountry": "SGP",
    "registrationDate": "2020-01-15",
    "legalType": "PRIVATE_LIMITED_LIABILITY_COMPANY",
    "legalAddress": "123 Business Street, Singapore 123456",
    "email": "[email protected]",
    "phone": "+65 1234 5678",
    "taxId": "T12345678A",
    "leiCode": null,
    "websiteUrl": "https://example.com",
    "confirmed": false,
    "customFields": [],
    "attachedDocs": [],
    "createdAt": "2026-05-22T10:30:00Z",
    "updatedAt": "2026-05-22T10:30:00Z"
  },
  "declaredCompanies": [],
  "declaredIndividuals": [
    {
      "individualId": "IND-2026052200001",
      "externalId": null,
      "firstName": "John",
      "middleName": null,
      "lastName": "Smith",
      "legalName": "John Smith",
      "aliasName": null,
      "roleType": "SHAREHOLDER",
      "individualType": "SHAREHOLDER",
      "shareRatio": 25.5,
      "companyId": "COM-2026052200001",
      "gender": "MALE",
      "dob": "1985-03-20",
      "placeOfBirth": "Singapore",
      "countryOfResidence": "SGP",
      "nationality": "SGP",
      "tin": null,
      "taxResidenceCountry": "SGP",
      "email": "[email protected]",
      "confirmed": false,
      "customFields": [],
      "attachedDocs": [],
      "createdAt": "2026-05-22T10:30:00Z",
      "updatedAt": "2026-05-22T10:30:00Z"
    }
  ]
}

Error Response

Response Description

The standard error response object.

ParameterDescription
errorobject The error details.

ResponseError.error

FieldDescription
typestring Error code or type.
messagestring Human-readable error message.

ResponseError.error.type

ValueDescriptionHTTP Status Code
parameter_errorParameter validation failed (e.g., missing or invalid parameter).400 Bad Request
iam_failedAuthentication or authorization failed.401 Unauthorized
errorInternal server error or unknown error.500 Internal Server Error
not_foundRequested resource not found.404 Not Found
service_busyThe service is busy or rate limited.429 Too Many Requests

Response Examples

{
  "error": {
    "type": "parameter_error",
    "message": "kybLevel cannot be empty"
  }
}