Get Form Fields
The Get Form Fields API allows you to retrieve all fields defined in a specific form. This endpoint returns detailed information about each field including its unique identifier, full qualified name, type, display name, and organizational context within the form structure.
API Endpoint
GET {base_url}/ExtForm/forms/{formId}/fields
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
formId | string | Yes | Unique identifier of the form for which to retrieve fields |
Request Headers
Authorization: Bearer {your_access_token}
Response
The response contains a list of all fields in the specified form, including their identifiers, types, and organizational structure.
Response Structure
{
"statusCode": 200,
"messages": [
"Processed successfully"
],
"result": {
"count": 50,
"fields": [
{
"fieldId": "3c2403cd-7067-4c08-821b-9fb2e5751c4f",
"fieldType": "DatePicker",
"fieldName": "Date of Birth",
"sectionName": "Personal Information",
"pageName": "Customer Details",
"isRequired": true
},
{
"fieldId": "9b1d0c22-4f8e-4a71-93c5-77c2a1e5d004",
"fieldType": "SingleOptionRadio",
"fieldName": "Are you a PEP?",
"sectionName": "Personal Information",
"pageName": "Customer Details",
"isRequired": true,
"options": [
{
"optionId": "1f0a7c53-6d24-4b0e-9f31-2a5c8e7b1d90",
"optionText": "Yes",
"optionValue": "1",
"order": 1
},
{
"optionId": "6c92b4a1-38df-4e57-8b02-9d1e4f6a7c33",
"optionText": "No",
"optionValue": "0",
"order": 2
}
]
},
// ... more fields
]
}
}
Response Fields
| Field | Type | Description |
|---|---|---|
count | integer | Total number of fields in the form |
fields | array | List of field objects |
Field Object Properties
| Property | Type | Description |
|---|---|---|
fieldId | string | Unique identifier of the field |
fieldType | string | Field type from FieldTypeEnum (e.g., "Text", "DatePicker", "MultiOptionsCheckBox") |
fieldName | string | Display name of the field |
sectionName | string | Name of the section containing the field |
pageName | string | Name of the page containing the field |
isRequired | boolean | Indicates whether the field is required or not |
options | array | Selectable options, in configured order. Present only on SingleOptionSelect, SingleOptionRadio and MultiOptionsCheckBox fields; omitted for every other field type |
Option Object Properties
Returned in the options array of option-based fields.
| Property | Type | Description |
|---|---|---|
optionId | string | Unique identifier of the option. This is the value to send as optionId / optionIds in the Save Submission answer |
optionText | string | Display text of the option, in the form's default language |
optionValue | string | Configured value of the option |
order | integer | Display position of the option within the field |
Example Usage
Request
GET {base_url}/ExtForm/forms/f4e72dba-7b5c-8g7h-9i8j-12k34l56m78n/fields
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Response
{
"statusCode": 200,
"messages": [
"Processed successfully"
],
"result": {
"count": 4,
"fields": [
{
"fieldId": "3c2403cd-7067-4c08-821b-9fb2e5751c4f",
"fieldType": "DatePicker",
"fieldName": "Date of Birth",
"sectionName": "Details",
"pageName": "PersonalInfo",
"isRequired": true
},
{
"fieldId": "5d10fd74-658b-41d5-8fed-2d60d52a89c0",
"fieldType": "UserAddress",
"fieldName": "Address Details",
"sectionName": "Details",
"pageName": "PersonalInfo",
"isRequired": false
},
{
"fieldId": "308fec76-b67f-45ec-81e2-06cff19b7c35",
"fieldType": "Passport",
"fieldName": "Passport",
"sectionName": "Identity",
"pageName": "PersonalInfo",
"isRequired": true
},
{
"fieldId": "b5a91e07-2c48-4d6f-90ab-13e7c5d82f16",
"fieldType": "MultiOptionsCheckBox",
"fieldName": "Source of Income",
"sectionName": "Financials",
"pageName": "PersonalInfo",
"isRequired": true,
"options": [
{
"optionId": "e41c8b95-7a30-42df-b6e8-05f9c2a4d711",
"optionText": "Salary",
"optionValue": "SAL",
"order": 1
},
{
"optionId": "0d73f6b2-95ce-4817-a2d4-8b6e1f30c952",
"optionText": "Dividends",
"optionValue": "DIV",
"order": 2
}
]
}
]
}
}
Notes
- Use the field id (
fieldId) when submitting answers through the Save Submission API - Fields are grouped by pages and sections to reflect the form's hierarchical structure
- Field types determine the answer model required when submitting form responses
- For
SingleOptionSelect,SingleOptionRadioandMultiOptionsCheckBoxfields, take the option ids from this endpoint'soptionsarray. These options are configured per field and are not available through the Lookup API, which serves only the shared reference lists (country, source of funds, PEP status, and similar) - Options disabled in the form configuration are not returned, so every returned
optionIdis valid to submit - An option-based field with no options configured returns an empty
optionsarray, while a field type that has no options omits the property entirely optionTextis returned in the form's default language; this endpoint does not apply translations- Some fields may have additional validation rules not exposed through this API
Related Resources
- Get Forms API - Retrieve available forms
- Save Submission API - Submit answers for a form
- Documents Upload API - Upload documents referenced in form answers
- Lookup API - Retrieve reference data for dropdown fields and other lookups
Error Handling
| Status Code | Description | Solution |
|---|---|---|
| 400 | Invalid formId format | Check the format of your formId parameter |
| 403 | Insufficient permissions | Verify your authentication token and permissions |
| 404 | Form not found | Confirm the form exists and the formId is correct |
| 500 | Server error | Contact support if the error persists |