Skip to main content

Save Submission

The Save Submission API allows you to submit answers to form fields programmatically. This API is typically used after uploading any required documents with the Document Upload API.

API Endpoint

POST {base_url}/ExtForm/submissions

Request Format

Request Headers

Content-Type: application/json
Authorization: Bearer {token}

Request Body

{
"submissionId": "7ac9ab5e-4123-4456-b8c3-123456789012",
"answers": [
{
"fqName": "PersonalInfo_Identity_Passport",
"answer": {
"fieldTypeId": "Passport",
"documentId": "d8f72bae-5c9a-4f8e-b8e7-19d8fcd7e34b"
}
},
{
"fieldId": "g23e45f6-7g8h-9i0j-1k2l-3m4n5o6p7q8",
"answer": {
"fieldTypeId": "Country",
"countryId": "US"
}
}
// Additional answers...
]
}

Request Fields

FieldTypeRequiredDescription
submissionIdstringYesUnique identifier for an existing submission
answersarrayYesArray of answer items

Answer Item

Each answer item in the answers array must include:

FieldTypeRequiredDescription
fqNamestringConditionalFully qualified name of the field (PageName_SectionName_FieldName). Required if fieldId is not provided
fieldIdstringConditionalDirect field identifier. Required if fqName is not provided
answerobjectYesAnswer model specific to the field type

Important: Either fqName OR fieldId must be provided for each answer item - not both simultaneously.

The answer object must include:

FieldTypeRequiredDescription
fieldTypeIdstringYesType of the field (matches the answer model type)
Additional fieldsvariesYesFields specific to the answer model type

Response Format

{
"statusCode": 200,
"messages": ["Processed successfully"],
"result": "7ac9ab5e-4123-4456-b8c3-123456789012"
}

Response Fields

FieldDescription
resultThe submission ID that was processed or created

Field Qualified Names (FQN)

Each field in the form can be identified by its fully qualified name (FQN), which follows the pattern:

{PageName}_{SectionName}_{FieldName}

For example:

  • PersonalInfo_Identity_Passport
  • BusinessDetails_Address_CompanyAddress
  • Financial_Source_SourceOfWealth

Alternatively, you can use the direct fieldId value if you know it.

Answer Models

Each field type requires a specific answer model. The fieldTypeId in your request must match the appropriate model for the field you're answering.

For a complete list of available answer models and their required fields, refer to the Answer Models section of the documentation.

Common Answer Models

Some frequently used answer models include:

Field TypeAnswer ModelKey Properties
Passport uploadPassportdocumentId
ID card uploadIdCardidCardFrontId, idCardBackId
Country selectionCountrycountryId
Text inputTexttextValue
Date selectionDatePickerdate
Multiple choiceSingleOptionRadiooptionId
Multiple selectionMultiOptionsCheckBoxoptionIds (array)

Error Handling

Status CodeDescriptionSolution
400"Make sure all answer models have either a FQName or FieldId"Ensure each answer has either a FQName or FieldId
400Invalid request formatCheck the structure of your request
400Field not foundVerify that the FQN or fieldId is correct
400Invalid field typeEnsure the fieldTypeId matches the field type
400Missing required fieldProvide all required fields for the answer model
401UnauthorizedVerify your authentication token
500Internal server errorContact support with the error details

Important Notes

  1. Each answer must use the correct answer model corresponding to the field type.
  2. All required fields for each answer model must be provided.
  3. Document IDs referenced in answers must have been previously uploaded using the Document Upload API.
  4. Fields that allow multiple items (like SourceOfFund) require an array of items in the answer model.