Draft v0.1. The Partner API is being built. Endpoints and payloads may still change until sandbox access opens.

Claims

Claims customers report on policies issued with you. On the managed track Sorplos runs the claim on the customer's behalf; on the assisted track the customer deals with you and Sorplos guides them.

EndpointWhat it does
GET/claimsList claims
GET/claims/{id}Retrieve a claim
POST/claims/{id}/acknowledgeAcknowledge a claim
POST/claims/{id}/statusUpdate a claim's status
POST/claims/{id}/settleSettle a claim

List claims

GET/claims

Claims on your company's policies.

Query parameters

FieldTypeDescription
statusstringsubmitted | under_review | approved | rejected | settled | closed
trackstringmanaged | assisted
pageintegerPage number, starting at 1.
per_pageintegerItems per page, 1–200. Defaults to 50.
updated_sincetimestampOnly records changed at or after this ISO-8601 time — use it to sync incrementally.
Request
curl -X GET https://api-dev.sorplos.com/v1/partner-api/claims?status=submitted \
  -H "Authorization: Bearer sk_test_..."
Response
{
  "data": [
    {
      "id": "SPL-CLM-2026-012",
      "insurer_claim_ref": null,
      "policy_number": "SPL-POL-2026-128",
      "insurer_policy_number": "LWY/MTR/2026/004512",
      "track": "managed",
      "status": "submitted",
      "incident_type": "motor_accident",
      "incident_date": "2026-11-02",
      "description": "Rear-ended at a junction on Admiralty Way; rear bumper and boot lid damaged.",
      "amount_claimed": 850000,
      "evidence": [
        {
          "name": "police-report.pdf",
          "url": "https://…/presigned"
        }
      ],
      "reported_at": "2026-11-03T08:15:00Z"
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 50,
    "total": 1
  }
}

Retrieve a claim

GET/claims/{id}

The claim with its evidence. Evidence links are short-lived; fetch the claim again for fresh ones.

Request
curl -X GET https://api-dev.sorplos.com/v1/partner-api/claims/SPL-CLM-2026-012 \
  -H "Authorization: Bearer sk_test_..."
Response
{
  "id": "SPL-CLM-2026-012",
  "insurer_claim_ref": null,
  "policy_number": "SPL-POL-2026-128",
  "insurer_policy_number": "LWY/MTR/2026/004512",
  "track": "managed",
  "status": "submitted",
  "incident_type": "motor_accident",
  "incident_date": "2026-11-02",
  "description": "Rear-ended at a junction on Admiralty Way; rear bumper and boot lid damaged.",
  "amount_claimed": 850000,
  "evidence": [
    {
      "name": "police-report.pdf",
      "url": "https://…/presigned"
    }
  ],
  "reported_at": "2026-11-03T08:15:00Z"
}

Acknowledge a claim

POST/claims/{id}/acknowledge

Give the claim your own reference. Moves it to under_review.

Body

FieldTypeDescription
insurer_claim_refrequiredstringYour claim reference, stored exactly as sent.
Request
curl -X POST https://api-dev.sorplos.com/v1/partner-api/claims/SPL-CLM-2026-012/acknowledge \
  -H "Authorization: Bearer sk_test_..." \
  -H "Idempotency-Key: 5f0c2a8e-7d1b-4c3e-9a64-1b2d3e4f5a6b" \
  -H "Content-Type: application/json" \
  -d '{
  "insurer_claim_ref": "LWY-CLM-2026-0311"
}'
Response
{
  "id": "SPL-CLM-2026-012",
  "insurer_claim_ref": "LWY-CLM-2026-0311",
  "policy_number": "SPL-POL-2026-128",
  "insurer_policy_number": "LWY/MTR/2026/004512",
  "track": "managed",
  "status": "under_review",
  "incident_type": "motor_accident",
  "incident_date": "2026-11-02",
  "description": "Rear-ended at a junction on Admiralty Way; rear bumper and boot lid damaged.",
  "amount_claimed": 850000,
  "evidence": [
    {
      "name": "police-report.pdf",
      "url": "https://…/presigned"
    }
  ],
  "reported_at": "2026-11-03T08:15:00Z"
}

Update a claim's status

POST/claims/{id}/status

Record progress on a claim. Settling has its own call, because it carries the amount.

Body

FieldTypeDescription
statusrequiredstringunder_review | approved | rejected | closed
notestringContext for Sorplos, e.g. the assessor's finding.

Sends claim.approved to your webhooks.

Request
curl -X POST https://api-dev.sorplos.com/v1/partner-api/claims/SPL-CLM-2026-012/status \
  -H "Authorization: Bearer sk_test_..." \
  -H "Idempotency-Key: 5f0c2a8e-7d1b-4c3e-9a64-1b2d3e4f5a6b" \
  -H "Content-Type: application/json" \
  -d '{
  "status": "approved",
  "note": "Assessor report accepted."
}'
Response
{
  "id": "SPL-CLM-2026-012",
  "insurer_claim_ref": "LWY-CLM-2026-0311",
  "policy_number": "SPL-POL-2026-128",
  "insurer_policy_number": "LWY/MTR/2026/004512",
  "track": "managed",
  "status": "approved",
  "incident_type": "motor_accident",
  "incident_date": "2026-11-02",
  "description": "Rear-ended at a junction on Admiralty Way; rear bumper and boot lid damaged.",
  "amount_claimed": 850000,
  "evidence": [
    {
      "name": "police-report.pdf",
      "url": "https://…/presigned"
    }
  ],
  "reported_at": "2026-11-03T08:15:00Z"
}

Settle a claim

POST/claims/{id}/settle

Record payment of the claim.

Body

FieldTypeDescription
amount_settledrequirednumberNaira paid.
settled_atrequiredtimestampWhen the payment was made.
payment_referencestringYour payment or transfer reference.

Sends claim.settled to your webhooks.

Request
curl -X POST https://api-dev.sorplos.com/v1/partner-api/claims/SPL-CLM-2026-012/settle \
  -H "Authorization: Bearer sk_test_..." \
  -H "Idempotency-Key: 5f0c2a8e-7d1b-4c3e-9a64-1b2d3e4f5a6b" \
  -H "Content-Type: application/json" \
  -d '{
  "amount_settled": 775000,
  "settled_at": "2026-11-20T14:00:00Z",
  "payment_reference": "LWY-PAY-99812"
}'
Response
{
  "id": "SPL-CLM-2026-012",
  "insurer_claim_ref": "LWY-CLM-2026-0311",
  "policy_number": "SPL-POL-2026-128",
  "insurer_policy_number": "LWY/MTR/2026/004512",
  "track": "managed",
  "status": "settled",
  "incident_type": "motor_accident",
  "incident_date": "2026-11-02",
  "description": "Rear-ended at a junction on Admiralty Way; rear bumper and boot lid damaged.",
  "amount_claimed": 850000,
  "evidence": [
    {
      "name": "police-report.pdf",
      "url": "https://…/presigned"
    }
  ],
  "reported_at": "2026-11-03T08:15:00Z",
  "amount_settled": 775000
}