Update partial or complete requirement data for an incorporation. Each write returns the updated intake state and validation summary.
GET /partner/incorporation/{incorporationId} and inspect intakeState.
When intakeState.validation.isComplete is true, call POST /partner/incorporation/{incorporationId}/submit to hand the incorporation to Commenda for review.
Participant roles and participant documents are managed through the participant and document endpoints, not by sending array indexes or document files inside this intake payload.
registeredAddressMode is a data choice, not UI rendering instruction:
standardAddress means Commenda should use its standard registered address service for this incorporation.providedAddress means the partner is providing a reusable Commenda OS location.registeredAddressMode is providedAddress, include providedRegisteredAddress as a Commenda OS location reference.
data on the existingResource reference for incorporation validation.
If you later switch registeredAddressMode back to standardAddress, any previously submitted providedRegisteredAddress value may remain in currentState, but it is no longer applicable and will not block validation.
missingRequirements and invalidRequirements until the current incorporation state satisfies those rules.
For participant-specific requirements, register participants with roles and link documents to each participant:
POST /partner/incorporation/{incorporationId}/participants for director/shareholder roles.POST /partner/incorporation/{incorporationId}/documents for participant document requirements.Incorporation identifier returned by create or list endpoints.
Partner-submitted requirement values keyed by DSL field keys.
{
"companyNameOptions": [
{ "name": "Acme SG Pte Ltd" },
{ "name": "Acme Asia Pte Ltd" },
{ "name": "Acme Global Pte Ltd" }
],
"registeredAddressMode": "standardAddress"
}
Intake update accepted and validated
Requirements DSL 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 DSL.
{
"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": ["keyPerson"],
"documentRequirements": [
{
"documentKind": "passport_scan",
"name": "Passport scan"
},
{
"documentKind": "utility_bill",
"name": "Utility bill"
}
]
}
]
}