Retrieve the current requirements schema for a selected incorporation jurisdiction and type. This endpoint is informational; intake updates are validated against the current server-side incorporation requirements.
Returns the current requirements for a selected incorporation. For Singapore private limited companies:Documentation Index
Fetch the complete documentation index at: https://docs.commenda.io/llms.txt
Use this file to discover all available pages before exploring further.
missingRequirements and invalidRequirements from intake responses.
For a renderer-oriented explanation of field kinds, input types, conditions, cardinality, constraints, and endpoint routing, see Requirements guide.
| Role requirement | participantType | resource.resourceType | Notes |
|---|---|---|---|
| Individual director | INDIVIDUAL | KEY_PERSON | Use a Commenda OS person id. One person can also hold a shareholder role. |
| Individual shareholder | INDIVIDUAL | KEY_PERSON | Use a Commenda OS person id and include ownershipPercentage. |
| Corporate shareholder | CORPORATE | BUSINESS_ENTITY | Use a Commenda OS business entity id and include ownershipPercentage. |
| Corporate director | CORPORATE | BUSINESS_ENTITY | Not supported for Singapore private limited companies. |
documentRequirements are returned, match them by role, participantType, and resourceType. Individual Singapore directors and shareholders require PASSPORT_SCAN and UTILITY_BILL; corporate shareholder documents, if required by the selected incorporation type, are surfaced by the same documentRequirements array.
Some participant requirements also include resourceFieldsByParticipantType. These are fields on the Commenda OS resource you registered as the participant. For example, Singapore individual directors require the key person to have residentialAddress. Satisfy that field by creating or updating the person with residentialAddress; it is not a reusable Commenda OS Location and should not be sent as registeredOfficeAddressLocation.
Requirements snippet:
participant_123 in the incorporation response:
12:
missingRequirements and invalidRequirements correspond to requirements fields or participant/document requirements. Field validation paths include the requirements block key, such as companyNames.companyNameOptions, even though the intake payload key remains requirements.companyNameOptions. Participant resource paths look like participants.participant_123.resource.residentialAddress. Participant document paths look like participants.participant_123.documents.PASSPORT_SCAN.
You may cache the requirements response by country plus countryOptions, but do not send a requirements version back to Commenda. If validation returns new missing or invalid requirements, update your UI from the latest response.Incorporation country. ISO 3166-1 alpha-2 country code for the incorporation jurisdiction.
AE, CA, GB, IE, IN, KY, NZ, SG, US "SG"
Country-specific options using deep-object query syntax, for example countryOptions[corporationType]=PRIVATE_LIMITED_COMPANY.
Country-specific incorporation options. Use the jurisdiction catalog for the currently supported fields and values.
{
"corporationType": "PRIVATE_LIMITED_COMPANY"
}Requirements retrieved successfully
Requirements schema for the selected incorporation. Clients can use this to render their own intake UI, but intake updates are always validated against the current server-side incorporation requirements.
{
"schemaVersion": "2026-04-22",
"dslVersion": "mvp-2026-04-22",
"key": "sg.private_limited_company",
"country": "SG",
"countryOptions": {
"corporationType": "PRIVATE_LIMITED_COMPANY"
},
"name": "Singapore Private Limited Company Incorporation Requirements",
"blocks": [
{
"key": "companyNames",
"name": "Company name options"
}
],
"participantRequirements": [
{
"key": "directors",
"name": "Directors",
"role": "DIRECTOR",
"allowedParticipantTypes": ["INDIVIDUAL"],
"allowedResourceTypes": ["KEY_PERSON"],
"resourceFieldsByParticipantType": {
"INDIVIDUAL": [
{
"kind": "resource",
"key": "residentialAddress",
"name": "Residential address",
"description": "The key person's current residential address. Store this on the Commenda OS person as residentialAddress.",
"required": true,
"resourceKind": "address",
"commendaOs": {
"entity": "keyPerson",
"field": "residentialAddress"
},
"fields": [
{
"kind": "scalar",
"key": "addressLine1",
"name": "Address line 1",
"required": true,
"commendaOs": {
"entity": "keyPerson",
"field": "residentialAddress.addressLine1"
}
},
{
"kind": "scalar",
"key": "city",
"name": "City",
"required": true,
"commendaOs": {
"entity": "keyPerson",
"field": "residentialAddress.city"
}
},
{
"kind": "scalar",
"key": "country",
"name": "Country",
"required": true,
"commendaOs": {
"entity": "keyPerson",
"field": "residentialAddress.country"
}
}
]
}
]
},
"documentRequirements": [
{
"documentKind": "PASSPORT_SCAN",
"name": "Passport scan"
},
{
"documentKind": "UTILITY_BILL",
"name": "Utility bill"
}
]
}
]
}