curl --request POST \
--url https://api.sandbox.lead.bank/v2/applications \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"status": "approved",
"product_name": "Growth Business Credit Line",
"entities": {
"account_holders": [
"entity_9f3cKq2Lm8Nw4Rx7Tz1Ba5Ce0D"
],
"authorized_signers": [
"entity_4dP7Hs2Jk9Lm3Qw8Ex6Rt1Yu5I"
]
},
"details": {
"underwriting": {
"is_secured": false,
"is_mla": false,
"currency_code": "USD",
"underwriting_grade": "A2",
"limit": 5000000,
"max_limit": 10000000,
"report": {
"score": 712,
"pulled_at": "2026-05-14T15:58:40Z",
"source": "transunion"
}
}
},
"decision": {
"decided_at": "2026-05-14T15:59:12Z",
"reason": "Meets program underwriting criteria"
},
"documents": [
{
"file_id": "file_2N5Hk8xYmQpL9rBvC3jD",
"timestamp": "2026-05-14T15:58:05Z",
"version": "v1"
},
{
"file_id": "file_7Qw2Rt5YuI9oP3aS6dF1",
"timestamp": "2026-05-14T15:57:20Z"
}
],
"metadata": {}
}
'{
"id": "application_xyz123",
"status": "approved",
"product_name": "Growth Business Credit Line",
"entities": {
"account_holder_type": "commercial",
"account_holders": [
"entity_xyz123"
],
"authorized_signers": [
"entity_xyz123"
]
},
"details": {
"underwriting": {
"is_secured": true,
"is_mla": true,
"currency_code": "AED",
"underwriting_grade": "A2",
"limit": 5000000,
"max_limit": 10000000,
"report": {
"score": 123,
"non_score_value": "unestablished",
"pulled_at": "2023-11-07T05:31:56Z",
"source": "equifax"
}
},
"adverse_action_notice": {
"delivered_at": "2023-11-07T05:31:56Z",
"reason": "<string>",
"delivery_method": "email"
}
},
"documents": [
{
"file_id": "file_7RwQ2mK9pL4xT1vN8jS5",
"timestamp": "2026-09-14T14:20:11Z",
"version": "v2"
}
],
"created_at": "2026-05-14T15:59:30Z",
"updated_at": "2026-05-14T15:59:30Z",
"client_application_id": "APP-2024-001",
"decision": {
"decided_at": "2023-11-07T05:31:56Z",
"reason": "<string>",
"exception_approval_reason": "<string>"
},
"legacy_documents": [
{
"document_id": "loan_agreement_01_2026.pdf",
"type": "aan",
"displayed_at": "2023-11-07T05:31:56Z",
"consented_at": "2023-11-07T05:31:56Z",
"version": "v1"
}
],
"metadata": {}
}{
"code": "idempotency_key_missing",
"message": "This endpoint requires an Idempotency-Key header. Add one and resend the request."
}{
"code": "token_invalid",
"message": "The bearer token is missing, expired, malformed, or invalid."
}{
"code": "idempotency_key_in_use",
"message": "A concurrent request using this Idempotency-Key is still in flight."
}{
"code": "content_too_large",
"message": "The request is over a size limit for this endpoint. Make it smaller and resend it.",
"errors": [
{
"code": "body_too_large",
"message": "metadata is over this endpoint's size limit.",
"parameters": [
"metadata"
]
}
]
}{
"code": "parameters_invalid",
"message": "One or more parameters are invalid.",
"errors": [
{
"code": "parameter_bound_exceeded",
"message": "details.underwriting.limit (10000000) cannot exceed details.underwriting.max_limit (5000000).",
"parameters": [
"details.underwriting.limit"
]
},
{
"code": "dependent_parameter_required",
"message": "details.adverse_action_notice is required when status is declined.",
"parameters": [
"details.adverse_action_notice"
]
}
]
}{
"code": "rate_limit_exceeded",
"message": "You have exceeded the rate limit for this endpoint. Retry with backoff."
}{
"code": "internal_server_error",
"message": "Something went wrong on our end. Contact Lead with the Request-Id if this persists."
}{
"code": "service_unavailable",
"message": "The service is temporarily unavailable. Retry after the indicated delay."
}{
"code": "gateway_timeout",
"message": "An upstream system timed out. Retry with backoff."
}Create an Application
Report a final underwriting decision. The Application is created in its final status, approved, declined, or canceled, and the status cannot change afterward.
Each documents entry references a File you uploaded with POST /v2/files. Lead checks that each File exists, belongs to your program, and has a compliance document type. Send [] when you have no documents yet.
curl --request POST \
--url https://api.sandbox.lead.bank/v2/applications \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"status": "approved",
"product_name": "Growth Business Credit Line",
"entities": {
"account_holders": [
"entity_9f3cKq2Lm8Nw4Rx7Tz1Ba5Ce0D"
],
"authorized_signers": [
"entity_4dP7Hs2Jk9Lm3Qw8Ex6Rt1Yu5I"
]
},
"details": {
"underwriting": {
"is_secured": false,
"is_mla": false,
"currency_code": "USD",
"underwriting_grade": "A2",
"limit": 5000000,
"max_limit": 10000000,
"report": {
"score": 712,
"pulled_at": "2026-05-14T15:58:40Z",
"source": "transunion"
}
}
},
"decision": {
"decided_at": "2026-05-14T15:59:12Z",
"reason": "Meets program underwriting criteria"
},
"documents": [
{
"file_id": "file_2N5Hk8xYmQpL9rBvC3jD",
"timestamp": "2026-05-14T15:58:05Z",
"version": "v1"
},
{
"file_id": "file_7Qw2Rt5YuI9oP3aS6dF1",
"timestamp": "2026-05-14T15:57:20Z"
}
],
"metadata": {}
}
'{
"id": "application_xyz123",
"status": "approved",
"product_name": "Growth Business Credit Line",
"entities": {
"account_holder_type": "commercial",
"account_holders": [
"entity_xyz123"
],
"authorized_signers": [
"entity_xyz123"
]
},
"details": {
"underwriting": {
"is_secured": true,
"is_mla": true,
"currency_code": "AED",
"underwriting_grade": "A2",
"limit": 5000000,
"max_limit": 10000000,
"report": {
"score": 123,
"non_score_value": "unestablished",
"pulled_at": "2023-11-07T05:31:56Z",
"source": "equifax"
}
},
"adverse_action_notice": {
"delivered_at": "2023-11-07T05:31:56Z",
"reason": "<string>",
"delivery_method": "email"
}
},
"documents": [
{
"file_id": "file_7RwQ2mK9pL4xT1vN8jS5",
"timestamp": "2026-09-14T14:20:11Z",
"version": "v2"
}
],
"created_at": "2026-05-14T15:59:30Z",
"updated_at": "2026-05-14T15:59:30Z",
"client_application_id": "APP-2024-001",
"decision": {
"decided_at": "2023-11-07T05:31:56Z",
"reason": "<string>",
"exception_approval_reason": "<string>"
},
"legacy_documents": [
{
"document_id": "loan_agreement_01_2026.pdf",
"type": "aan",
"displayed_at": "2023-11-07T05:31:56Z",
"consented_at": "2023-11-07T05:31:56Z",
"version": "v1"
}
],
"metadata": {}
}{
"code": "idempotency_key_missing",
"message": "This endpoint requires an Idempotency-Key header. Add one and resend the request."
}{
"code": "token_invalid",
"message": "The bearer token is missing, expired, malformed, or invalid."
}{
"code": "idempotency_key_in_use",
"message": "A concurrent request using this Idempotency-Key is still in flight."
}{
"code": "content_too_large",
"message": "The request is over a size limit for this endpoint. Make it smaller and resend it.",
"errors": [
{
"code": "body_too_large",
"message": "metadata is over this endpoint's size limit.",
"parameters": [
"metadata"
]
}
]
}{
"code": "parameters_invalid",
"message": "One or more parameters are invalid.",
"errors": [
{
"code": "parameter_bound_exceeded",
"message": "details.underwriting.limit (10000000) cannot exceed details.underwriting.max_limit (5000000).",
"parameters": [
"details.underwriting.limit"
]
},
{
"code": "dependent_parameter_required",
"message": "details.adverse_action_notice is required when status is declined.",
"parameters": [
"details.adverse_action_notice"
]
}
]
}{
"code": "rate_limit_exceeded",
"message": "You have exceeded the rate limit for this endpoint. Retry with backoff."
}{
"code": "internal_server_error",
"message": "Something went wrong on our end. Contact Lead with the Request-Id if this persists."
}{
"code": "service_unavailable",
"message": "The service is temporarily unavailable. Retry after the indicated delay."
}{
"code": "gateway_timeout",
"message": "An upstream system timed out. Retry with backoff."
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Headers
A unique key for this request, up to 255 characters. Retrying with the same key and body returns the original response without creating a second application. See Idempotency.
255Body
Request body for POST /v2/applications. The application is created in its final status.
client_application_id and legacy_documents are read only. Lead ignores them, and any other field this endpoint does not define, if sent.
Terminal state of the application. Possible values: approved, declined, canceled.
approved, declined, canceled Your internal product name. It tells Lead which product the application opens a user account for if approved. Use a stable name.
"Growth Business Credit Line"
The entities on the application. Each must already exist. Each relationship type takes up to 20 entities, and no entity can appear twice in one type. The account holders must be all consumer (individuals) or all commercial (businesses or sole proprietorships).
On approved applications only, each entity must be eligible for its relationship type, and a commercial application needs at least one authorized signer. Your program can also require credit data on each account holder's and authorized signer's entity for approved applications; your Technical Account Manager can tell you whether yours does.
account_holder_type is derived by Lead and response only, so Lead ignores it if sent. Entities cannot change after creation.
Show child attributes
Show child attributes
Underwriting and adverse action notice details.
Show child attributes
Show child attributes
When and why the underwriting decision was made.
Show child attributes
Show child attributes
Compliance documents, each referencing a file you uploaded with POST /v2/files. Lead takes the document type from the file, which must be a compliance document type. Send [] when you have no documents yet.
- Each
file_idmust exist, belong to your program, and appear at most once. - One file can back many applications.
Show child attributes
Show child attributes
Key-value pairs for your own use.
Show child attributes
Show child attributes
Response
Application created.
An application, your report of an underwriting decision. Applications created on v0 are returned in this shape.
Unique identifier for the application. Prefixed with application_.
^application_\w+$"application_xyz123"
The application's status. Applications created through the API are always approved, declined, or canceled, the statuses POST accepts.
submitted and under_review appear only on applications you reported in an Application file before a decision was made. They are read only: POST does not accept them, and a PATCH that includes status leaves it unchanged.
approved, declined, canceled, submitted, under_review "approved"
Your internal product name.
"Growth Business Credit Line"
The entities on the application. Authorized users are not returned here; list them with GET /v2/applications/{id}/entity_relationships.
Show child attributes
Show child attributes
Underwriting and adverse action notice details.
Show child attributes
Show child attributes
Compliance documents linked on v2, each referencing an uploaded file. Always an array.
Show child attributes
Show child attributes
When the application was created. RFC 3339, UTC.
"2026-05-14T15:59:30Z"
When the application was last updated. RFC 3339, UTC.
"2026-05-14T15:59:30Z"
Your ID for applications you reported in an Application file. Lead omits it for applications created through the API.
"APP-2024-001"
When and why the underwriting decision was made. Absent when status is submitted or under_review.
Show child attributes
Show child attributes
Document entries created on v0 Applications, returned exactly as sent. Read only: ignored if included on a POST or PATCH.
Show child attributes
Show child attributes
Key-value pairs for your own use.
Show child attributes
Show child attributes
Was this page helpful?

