Applications
A customer's paid request for cover with your company. You acknowledge it, ask questions if you need to, and decide. Applications arrive as application.submitted webhooks; these calls act on them.
| Endpoint | What it does |
|---|---|
| GET/applications | List applications |
| GET/applications/{id} | Retrieve an application |
| POST/applications/{id}/acknowledge | Acknowledge an application |
| POST/applications/{id}/rfi | Request information (RFI) |
| POST/applications/{id}/decision | Approve or reject |
List applications
GET/applications
Applications placed with your company, newest first. Only your company's applications are ever returned — the key decides which company you are.
Query parameters
| Field | Type | Description |
|---|---|---|
| status | string | submitted | under_review | rfi_required | approved | rejected |
| page | integer | Page number, starting at 1. |
| per_page | integer | Items per page, 1–200. Defaults to 50. |
| updated_since | timestamp | Only records changed at or after this ISO-8601 time — use it to sync incrementally. |
curl -X GET https://api-dev.sorplos.com/v1/partner-api/applications?status=submitted \
-H "Authorization: Bearer sk_test_..."{
"data": [
{
"id": "SPL-APP-2026-045",
"insurer_application_ref": null,
"status": "submitted",
"product": {
"sorplos_code": "MOTOR-COMP",
"provider_product_id": "PROV-MTR-001",
"name": "Comprehensive Motor",
"category": "motor"
},
"customer": {
"full_name": "Chidi Okonkwo"
},
"premium": {
"total": 376300,
"currency": "NGN"
},
"submitted_at": "2026-09-14T09:20:05Z"
}
],
"meta": {
"page": 1,
"per_page": 50,
"total": 1
}
}Retrieve an application
GET/applications/{id}
The full application, including the customer, risk details, premium breakdown and any RFIs. The same object an application.submitted webhook carries.
curl -X GET https://api-dev.sorplos.com/v1/partner-api/applications/SPL-APP-2026-045 \
-H "Authorization: Bearer sk_test_..."{
"id": "SPL-APP-2026-045",
"insurer_application_ref": "LWY-APP-2026-045",
"status": "under_review",
"product": {
"sorplos_code": "MOTOR-COMP",
"provider_product_id": "PROV-MTR-001",
"name": "Comprehensive Motor",
"category": "motor"
},
"customer": {
"full_name": "Chidi Okonkwo",
"date_of_birth": "1985-03-15",
"gender": "male",
"email": "chidi@example.com",
"phone": "+2348030000000",
"address": "12 Admiralty Way, Lekki Phase 1, Lagos",
"identity": {
"type": "bvn",
"verified_at": "2026-09-14T09:12:00Z",
"last4": "8901",
"liveness": "passed"
}
},
"risk": {
"registration_number": "LSR-123-XY",
"year_of_manufacture": 2021,
"usage_type": "private",
"cover_type": "comprehensive",
"sum_insured": 8500000,
"coverage_start_date": "2026-10-01"
},
"premium": {
"base": 350000,
"taxes": [
{
"name": "VAT",
"amount": 26250
},
{
"name": "Stamp duty",
"amount": 50
}
],
"total": 376300,
"currency": "NGN"
},
"payment": {
"status": "paid",
"reference": "TXN-PAY-001",
"paid_at": "2026-09-14T09:20:00Z"
},
"rfis": [],
"submitted_at": "2026-09-14T09:20:05Z",
"updated_at": "2026-09-14T10:02:00Z"
}Acknowledge an application
POST/applications/{id}/acknowledge
Record that your system has received the application and give it your own reference. Moves it from submitted to under_review. Your reference is stored exactly as sent.
Body
| Field | Type | Description |
|---|---|---|
| insurer_application_refrequired | string | Your application reference, up to 64 characters, unique within your company. |
curl -X POST https://api-dev.sorplos.com/v1/partner-api/applications/SPL-APP-2026-045/acknowledge \
-H "Authorization: Bearer sk_test_..." \
-H "Idempotency-Key: 5f0c2a8e-7d1b-4c3e-9a64-1b2d3e4f5a6b" \
-H "Content-Type: application/json" \
-d '{
"insurer_application_ref": "LWY-APP-2026-045"
}'{
"id": "SPL-APP-2026-045",
"insurer_application_ref": "LWY-APP-2026-045",
"status": "under_review",
"product": {
"sorplos_code": "MOTOR-COMP",
"provider_product_id": "PROV-MTR-001",
"name": "Comprehensive Motor",
"category": "motor"
},
"customer": {
"full_name": "Chidi Okonkwo",
"date_of_birth": "1985-03-15",
"gender": "male",
"email": "chidi@example.com",
"phone": "+2348030000000",
"address": "12 Admiralty Way, Lekki Phase 1, Lagos",
"identity": {
"type": "bvn",
"verified_at": "2026-09-14T09:12:00Z",
"last4": "8901",
"liveness": "passed"
}
},
"risk": {
"registration_number": "LSR-123-XY",
"year_of_manufacture": 2021,
"usage_type": "private",
"cover_type": "comprehensive",
"sum_insured": 8500000,
"coverage_start_date": "2026-10-01"
},
"premium": {
"base": 350000,
"taxes": [
{
"name": "VAT",
"amount": 26250
},
{
"name": "Stamp duty",
"amount": 50
}
],
"total": 376300,
"currency": "NGN"
},
"payment": {
"status": "paid",
"reference": "TXN-PAY-001",
"paid_at": "2026-09-14T09:20:00Z"
},
"rfis": [],
"submitted_at": "2026-09-14T09:20:05Z",
"updated_at": "2026-09-14T10:02:00Z"
}Request information (RFI)
POST/applications/{id}/rfi
Ask for something you need before deciding. The question comes to Sorplos, never to the customer directly — we get the answer from the customer and reply. Moves the application to rfi_required until the RFI is answered.
Body
| Field | Type | Description |
|---|---|---|
| questionrequired | string | What you need, in plain language. |
| required_documents | string[] | Documents that would answer it, e.g. "Proof of ownership". |
Sends application.rfi_requested to your webhooks.
curl -X POST https://api-dev.sorplos.com/v1/partner-api/applications/SPL-APP-2026-045/rfi \
-H "Authorization: Bearer sk_test_..." \
-H "Idempotency-Key: 5f0c2a8e-7d1b-4c3e-9a64-1b2d3e4f5a6b" \
-H "Content-Type: application/json" \
-d '{
"question": "Please confirm the vehicle's current mileage and provide a recent photo of each side.",
"required_documents": [
"Vehicle photos (4 sides)"
]
}'{
"rfi": {
"id": "rfi_01J8Z3",
"question": "Please confirm the vehicle's current mileage and provide a recent photo of each side.",
"required_documents": [
"Vehicle photos (4 sides)"
],
"status": "open",
"raised_at": "2026-09-14T10:30:00Z"
},
"application_status": "rfi_required"
}Approve or reject
POST/applications/{id}/decision
Record your underwriting decision. Approving does not make a policy live on its own — confirm the policy with its number, dates and document (Policies → Confirm a policy). Rejecting triggers a refund to the customer.
Body
| Field | Type | Description |
|---|---|---|
| decisionrequired | string | approved | rejected |
| reason | string | Required when rejecting. Shown to Sorplos, not the customer verbatim. |
Sends application.approved or application.rejected to your webhooks.
curl -X POST https://api-dev.sorplos.com/v1/partner-api/applications/SPL-APP-2026-045/decision \
-H "Authorization: Bearer sk_test_..." \
-H "Idempotency-Key: 5f0c2a8e-7d1b-4c3e-9a64-1b2d3e4f5a6b" \
-H "Content-Type: application/json" \
-d '{
"decision": "approved"
}'{
"id": "SPL-APP-2026-045",
"insurer_application_ref": "LWY-APP-2026-045",
"status": "approved",
"product": {
"sorplos_code": "MOTOR-COMP",
"provider_product_id": "PROV-MTR-001",
"name": "Comprehensive Motor",
"category": "motor"
},
"customer": {
"full_name": "Chidi Okonkwo",
"date_of_birth": "1985-03-15",
"gender": "male",
"email": "chidi@example.com",
"phone": "+2348030000000",
"address": "12 Admiralty Way, Lekki Phase 1, Lagos",
"identity": {
"type": "bvn",
"verified_at": "2026-09-14T09:12:00Z",
"last4": "8901",
"liveness": "passed"
}
},
"risk": {
"registration_number": "LSR-123-XY",
"year_of_manufacture": 2021,
"usage_type": "private",
"cover_type": "comprehensive",
"sum_insured": 8500000,
"coverage_start_date": "2026-10-01"
},
"premium": {
"base": 350000,
"taxes": [
{
"name": "VAT",
"amount": 26250
},
{
"name": "Stamp duty",
"amount": 50
}
],
"total": 376300,
"currency": "NGN"
},
"payment": {
"status": "paid",
"reference": "TXN-PAY-001",
"paid_at": "2026-09-14T09:20:00Z"
},
"rfis": [],
"submitted_at": "2026-09-14T09:20:05Z",
"updated_at": "2026-09-14T10:02:00Z"
}