Search CAC’s register
GET /v1/businesses/search?query= takes a business name, or a registration number with or without
its prefix (7654321, RC 7654321, BN-1234567). You get up to 50 businesses, best match first.
Response (200)
Search is free, with live and test keys alike: test keys search the real register too. It allows
30 searches a minute per organization with a live key and 10 with a test key; live lookups,
verifications and new monitors count towards it too, since each searches CAC. A query shorter than 2
characters is
400 parameter_invalid. When CAC’s search doesn’t answer you get
503 cac_search_unavailable; try again in a minute.
Look up a business
POST /v1/businesses/lookups with the number returns its full record: name, status, registration
date, address, email and its officers.
Response (201)
- The number can carry its prefix (
RC 7654321) or go withtype. If it exists in more than one register and you send neither, you get400 type_requiredwith the registers indetails.types. officersare the proprietors, directors, secretaries and persons with significant control (psc), with name, role, status, nationality and appointment date only. Presenters and witnesses on CAC’s filing are left out, and so are dates of birth, ID numbers, phones, emails and home addresses.statusis always read fresh from CAC’s register.
GET /v1/businesses/lookups/{id} returns it again, free. Only your organization, in the same mode,
can read it. We keep the record encrypted.
Pricing
Search is free. A lookup costs ₦250 from the wallet of the key’s mode; the current price is on the Pricing page. It shows as acac_lookup_charge in your transactions.
Send an
Idempotency-Key: a retry with the same key gets the first answer and isn’t charged again.
Live lookups allow 60 a minute per organization.
Test mode
Test lookups never reach CAC. Every number returns the same test business: ADA FOODS VENTURES whentype is BN, ADA FOODS LIMITED otherwise, with ADA CHIOMA OBI as its proprietor or director.
?simulate=cac_record_missing gives the 404, lookup_unavailable the 503 and
insufficient_balance the 402. Search answers from the real register in test mode;
?simulate=cac_search_unavailable gives its 503.