Changelog
All notable changes to the Lira API are documented here. Breaking changes are marked explicitly. Dates follow ISO 8601 (YYYY-MM-DD).
2026-04-24
Added
- Francophone Africa coverage: Bank account and phone number verification now supported for Côte d'Ivoire (
CI), Senegal (SN), Cameroon (CM), Burkina Faso (BF), Mali (ML), Benin (BJ), and Togo (TG). Tanzania (TZ) is also added. All phone verifications for the new markets require anetworkCode— contact support for the carrier code list per country.
2026-03-09
Added
- Ghana phone number verification:
POST /verify/phonenow supports Ghana (GH) in addition to Nigeria. Ghana verifications require anetworkCode(MTN,Vodafone, orAirtelTigo). OmittingnetworkCodefor a GH request returnsNETWORK_CODE_REQUIRED. - Webhook delivery history: New endpoints to inspect webhook delivery attempts:
GET /client/webhooks/:id/deliveries: list recent deliveries with status and response detailsGET /client/webhooks/:id/deliveries/:deliveryId: get a specific delivery record
- Async verification mode: All verification endpoints now accept
"mode": "async". The API returnsstatus: pendingimmediately and delivers the result via webhook when processing completes. lastUsedAton API keys:GET /client/api-keysresponses now include alastUsedAttimestamp showing when each key was most recently used.expiresAton API keys: API key list responses include anexpiresAtfield. Currentlynullfor all keys; expiry configuration will be supported in a future release.
Changed
-
Webhook retry schedule updated: Retry delays changed from fixed 5-minute intervals to exponential backoff: immediate → 1 min → 3 min → 9 min → 27 min. Total retry window is approximately 40 minutes (previously 25 minutes). No action required for existing webhooks.
-
X-Signatureheader format: Webhook signature headers now use thesha256=<hex>prefix format. Previously the raw hex digest was sent without a prefix. Update your signature verification logic to strip thesha256=prefix before comparing.Migration: If you were comparing the header directly against a computed hex digest, update to:
const expected = 'sha256=' + crypto.createHmac('sha256', secret).update(rawBody).digest('hex');
Fixed
- Resolved an issue where
GET /verifywithstatus=pendingreturned completed verifications in some edge cases. PATCH /client/webhooks/:idno longer requires all fields to be present; partial updates work as documented.
2026-02-15
Added
- Webhook management API: New endpoints for registering and managing webhook endpoints:
POST /client/webhooks: register an endpointGET /client/webhooks: list all webhooks, with optionalstatusandeventfiltersGET /client/webhooks/:id: get a single webhookPATCH /client/webhooks/:id: update URL, events, status, or signing secretDELETE /client/webhooks/:id: delete a webhook
- Verification list endpoint:
GET /verifyreturns a paginated list of past verifications. Supportstype,status,limit, andoffsetquery parameters. - Verification retrieve endpoint:
GET /verify/:idretrieves the result of a specific verification by ID. Useful as a polling fallback when a webhook delivery is missed.
Changed
- API key header renamed: The authentication header for verification endpoints changed from
X-Lira-KeytoX-API-Key. The old header will continue to work until 2026-05-15; update before that date to avoid disruption. (Breaking change, grace period active)
2026-01-20
Added
- Phone number verification:
POST /verify/phoneverifies that a mobile number is registered with a carrier and returns the subscriber's name and date of birth. Supported country: Nigeria (NG). DEVELOPERrole: New organization role with access to verification endpoints and webhook management. Cannot create or revoke API keys.
Changed
- Verification response shape: Responses from
POST /verify/accountnow include a top-levelverifiedboolean field (in addition tostatus) for quick checks.verified: trueis equivalent tostatus: "success".
2026-01-05: Initial release
Added
- Bank account verification:
POST /verify/accountverifies a Nigerian bank account against official records and returns the account holder's name and address. - Authentication:
POST /auth/login,POST /auth/refresh,POST /auth/logoutfor JWT-based session management. - API key management:
POST /client/api-keys,GET /client/api-keys,DELETE /client/api-keys/:idfor creating and revoking API keys scoped to sandbox or live environments. - Sandbox environment: All endpoints are available in sandbox with deterministic test data. No real external queries are made and no charges are incurred.
- Supported countries: Nigeria (
NG) for bank account verification.
