Changelog
All notable changes to the Lira API are documented here. Breaking changes are marked explicitly. Dates follow ISO 8601 (YYYY-MM-DD).
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 provider data 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 provider queries are made and no charges are incurred.
- Supported countries: Nigeria (
NG) for bank account verification.