Changelog¶
All notable changes to the Octamile AIMS API are recorded here in reverse chronological order.
Labels: Breaking changes require updates to your integration. New adds functionality without breaking existing integrations. Fixed corrects incorrect behaviour.
2026-07-06¶
Policy issuance response now returns the transaction reference — New¶
Affected: Policy issuance (entt_{id}: insure).
The response now includes an id field containing the stored transaction reference — the same UUID you need to construct the status check command.
Use id directly when building your status check command:
Previously the response body was empty on success, requiring you to track seed.id yourself. Existing integrations are unaffected — the field is additive.
2026-07-02¶
Credit Life Insurance — New¶
Four Credit Life products are now available:
| Product | Code |
|---|---|
| SME Loan Credit Life | crlt-sme1-1111 |
| Personal Loan Credit Life | crlt-psnl-1111 |
| Keyman Insurance | crlt-kymn-1111 |
| Mortgage Protection | crlt-mrtg-1111 |
All four follow the standard four-step flow (register consumer → quote → issue → check status). See the Credit Life Insurance Guide for field references and cover period options.
Loan Repayment Guaranty quote — Fixed¶
Affected: SR10 (dump ipck_lrgg-stnd-1111*PRMM).
Requesting a quote for lrgg-stnd-1111 was incorrectly returning 400. Fixed — quotes work as expected.
2026-06-12¶
PayCover — premium financing commands — New¶
Three new commands are available for partners offering installment-based premium collection:
payment financeLoan— register a financing loan against an issued policy; includeloanAmount,installmentCount,firstDueDatein the seedpayment recordInstallment— log an installment payment received against an active loanpayment runLapse— SuperAdmin only: lapse policies where installments are overdue
Additionally, SR15 now auto-registers a financing loan when the financing block is included in the issuance seed:
VIN vehicle check — New¶
New enrichment command: enrch vin_vehicle
Decodes a 17-character Vehicle Identification Number (VIN) and returns make, model, year, body class, and fuel type via the NHTSA database. No per-call billing — free for all partners.
See the VIN Vehicle Check Guide for the full response reference.
2026-05-09¶
NIID vehicle check — New¶
New enrichment command: enrch niid_vehicle
Returns registration details for a Nigerian plate number — owner name, vehicle make and model, insurance status, and expiry date — from the NIID (Nigerian Insurance Industry Database).
Billed at ₦150 per call. Repeat lookups on the same plate within 24 hours are cached and free. The service must be activated on your partner account before use — contact support to enable it.
See the NIID Vehicle Check Guide for the full request and response reference.
2026-06-18¶
Claims management — New¶
Partners can now submit and track insurance claims directly via the API. Three new commands are available to all partners:
claim submit— file a FNOL against any policy you have issued (identified byirIdfromlist insure)claim status— retrieve full claim detail including attached documents and review notesclaim list— paginated list of all claims on your account, with optionalstatusfilter
See the Claims Management Guide for the full field reference.
Webhooks — dashboard management and delivery logs — New¶
Webhook endpoints can now be created, paused, and deleted directly from the Webhooks page in the partner dashboard, without using the API. The delivery log shows every outbound attempt with HTTP status and response body — useful for debugging failed deliveries. Dead deliveries can be retried from the dashboard.
No changes to the API commands (webhook register, webhook update, webhook delete, webhook list) or payload format.
2026-05-13¶
Travel Insurance — destination now required in Step 1 quote — Breaking¶
Affected: SR10 (dump ipck_ltix-stnd-1111*PRMM).
destination (the destination country name) is now a required field in the Step 1 quote seed. The coverage zone (Schengen / Area 1 / Area 2) is derived automatically from the destination — the travelPlan field is no longer needed in the quote call.
"seed": {
"insrncDrtn": "15d",
"destination": "France",
"planType": "individual",
"travelerAge": 35
}
Omitting destination returns:
Migration: Add destination to your SR10 seed. Remove travelPlan from the quote — it is ignored.
Travel Insurance — family plan support — New¶
Affected: SR10 and SR15 — ltix-stnd-1111.
planType: "family" is now supported. Family plans cover the primary traveler plus any number of additional travelers listed in a passengers array. Each passenger requires firstName, lastName, dob, and passportNo. See the Travel Insurance Guide for the full request format and field reference.
Travel Insurance — supported destination list — New¶
Affected: SR10 and SR15 — ltix-stnd-1111.
Destinations are now validated against a fixed list of countries supported by the underwriter. Passing a country not on the list returns:
The full list of supported countries is in the Travel Insurance Guide.
2026-05-08¶
eMail now required for all consumers — Breaking¶
Affected: SR05 (prfl entity) — all consumer classes (individual and organisation).
eMail is now a required field. Omitting it returns:
Migration: If you have existing consumers without an email on record, call prfl entity again with the same phoneNo and a valid eMail — the record updates in place.
Cover period validation enforced — Breaking¶
Affected: SR15 (entt_{id}: insure) — all products with insrncDrtn.
Previously, any syntactically valid duration string (e.g. 5m) was accepted even if the product only supports 1y. Invalid cover periods now return:
{ "exctnFdbck": { "id_v4": 406, "elbrtn": "Cover period not one of those supported by this product" } }
Migration: Ensure insrncDrtn matches the supported values listed in each product guide. For example, Third-Party Vehicle (vhcl-tprt-1111) accepts only "1y".
Consumer DOB and gender now validated before NSIA policy issuance — Fixed¶
Affected: SR15 — vhcl-cmpr-1111, vhcl-tprt-1111, allr-stnd-1111, firb-stnd-1111.
Attempting to issue an NSIA policy for a consumer registered without a date of birth or gender now returns a 406 before the request is stored, with a message directing you to update the consumer via prfl entity.
2026-05-05¶
phoneNo now required for individual consumers — Breaking¶
Affected: SR05 (prfl entity) — class: "individual" and class: "h".
phoneNo became a required field for individual consumers. Organisation consumers are not affected.
Marine Export (mexx-stnd-1111) voyage field must be objects — Breaking¶
Affected: SR15 — mexx-stnd-1111.
addtnlFact.voyage must be an array of objects with exactly one key each ("origin" or "destination"). Plain string arrays are rejected with 400.
Correct format:
"voyage": [
{ "origin": "Apapa Port, Lagos, Nigeria" },
{ "destination": "Tema Port, Accra, Ghana" }
]
2026-05-01¶
Device Warranty policies auto-approve with policy number — New¶
Affected: SR15 — phnn-flx1-1111, phnn-flx2-1111, phnn-flx3-1111.
PHNN products now auto-approve immediately on issuance. SR20 returns a policyNo in the format OCT-PHNN-YYYYMMDD-XXXXXXXX. No cert download is available — display the policy number as the certificate reference.
2026-04-29¶
SR05 consumer registration is now idempotent by email — New¶
Affected: SR05 (prfl entity).
Registering a consumer with an email address that already exists in your account returns the existing consumer ID rather than creating a duplicate. This allows safe retry behaviour without accumulating duplicate records.
SR20 response fields moved to top level — Breaking¶
Affected: SR20 (dump entt_*STATUS).
All response fields (status, certUrl, policyNo, crtfct, crtfctType) are now returned at the top level of the response, not nested inside exctnFdbck. Update any code that reads res.exctnFdbck.sngl.status to read res.status instead.
New response shape: