TopSure for developers

Insurance infrastructure for the gig economy.

One API to quote, enrol, manage beneficiaries and track claims for workers on your platform. TopSure runs the digital insurance layer. Licensed insurance partners provide the underwriting.

Illustrative API design. Not a live public API. Access is provided to approved partners.

How it fits

Your app stays your app. We handle the insurance.

Workers enrol inside your onboarding flow. TopSure handles quoting, eligibility, policy records and claims intake, and routes regulated underwriting to the licensed insurer in each market.

PlatformYour app
TopSure APIREST + webhooks
Policy / Quote / Enrolment / Payment
Licensed Insurance PartnerUnderwriting
ClaimsIntake to decision

Authentication

Requests are authenticated with a partner API key sent as a bearer token. Keys are issued per environment (sandbox and production) to approved partners. Never embed a key in a mobile app or browser. Call the API from your servers.

Header

Authorization: Bearer <YOUR_API_KEY>
Content-Type: application/json

Base URL (illustrative)

# sandbox
https://api.sandbox.topsure.example/v1
POST

/quote

Returns available cover options for a worker in a given country. Prices and benefits come from the configured product and licensed partner for that market.

Request

{
  "country": "VN",
  "worker_type": "motorcycle_rider",
  "plan": "essential",
  "billing_period": "monthly"
}

Response

{
  "quote_id": "qt_8f21c",
  "coverage": "24_7_accidental_death",
  "benefit": 30000,
  "premium": 4.99,
  "currency": "AUD",
  "expires_at": "2026-11-01T00:00:00Z"
}
POST

/enrol

Enrols a worker against an accepted quote. Eligibility checks run before the policy is issued by the insurance partner.

Request

{
  "quote_id": "qt_8f21c",
  "platform_worker_id": "drv_10442",
  "premium_collection": "earnings_deduction",
  "consent": { "terms_version": "2026-10" }
}

Response

{
  "policy_id": "pol_3c9a7",
  "policy_status": "pending_activation",
  "next_step": "add_beneficiary"
}
GET

/policy

Returns the current policy for a worker, including whether 24/7 protection is active.

Request

GET /policy?policy_id=pol_3c9a7

Response

POST

/beneficiary

Registers or updates the nominated beneficiary and optional Safe Contact. Personal data is passed through to the policy record and is not stored by your platform.

Request

{
  "policy_id": "pol_3c9a7",
  "relationship": "spouse",
  "name": "<BENEFICIARY_NAME>",
  "safe_contact": { "channel": "sms" }
}

Response

{
  "beneficiary_status": "registered",
  "policy_status": "active"
}
POST

/claim

Opens a claim notification. TopSure handles intake and documents; the licensed insurance partner assesses and decides the claim.

Request

{
  "policy_id": "pol_3c9a7",
  "reported_by": "beneficiary",
  "incident_date": "2026-10-02",
  "incident_type": "accident"
}

Response

{
  "claim_id": "TS-20483",
  "status": "submitted",
  "documents_required": ["death_certificate", "identity"]
}
GET

/claim/:id

Tracks a claim from submission to decision. No processing time is guaranteed by the API.

Request

GET /claim/TS-20483

Response

{
  "claim_id": "TS-20483",
  "status": "under_review",
  "documents": {
    "death_certificate": "received",
    "identity": "verified",
    "beneficiary": "verified"
  },
  "assessed_by": "insurance_partner"
}
POST

/cancel

Cancels a policy at the end of the current period, or as local rules require.

Request

{
  "policy_id": "pol_3c9a7",
  "reason": "worker_request"
}

Response

{
  "policy_status": "cancellation_scheduled",
  "cover_ends_at": "2026-11-01T00:00:00Z"
}

Webhooks

Subscribe to events so your app always shows the worker's current protection status.

policy.activated

Sent when the insurance partner issues the policy and 24/7 cover starts.

{
  "event": "policy.activated",
  "policy_id": "pol_3c9a7",
  "coverage": "24_7_accidental_death"
}

claim.status_changed

Sent whenever a claim moves between stages.

{
  "event": "claim.status_changed",
  "claim_id": "TS-20483",
  "from": "submitted",
  "to": "under_review"
}

Field names, endpoints and responses on this page are illustrative and may change. All figures are examples. Insurance products are provided by appropriately licensed insurance partners and are subject to eligibility, terms, exclusions and local regulation.

Build 24/7 worker protection into your platform.

Sandbox access is available to approved partners.

Request sandbox access