REST API · v1 · Base URL: api.findr.ng

Build with Findr's
Missing Persons API

Give your app access to Nigeria's most comprehensive missing persons database. Verified cases, real-time data, built for civic tech developers and researchers.

example request
GET https://api.findr.ng/api/v1/developer/missing-persons
Authorization: Bearer fndr_your_key
?state=Lagos&status=missing&limit=20
← 200 OK · Returns paginated list of cases

Getting started

How it works

Three steps from registration to live data.

01

Register

Submit your name, email, organisation, and use case. Your API key is issued instantly — no waiting, no approval queue.

02

Test

Your key starts in test mode. All responses use fictional seed data so you can build and validate your integration safely.

03

Go Live

Once you're ready, request a live mode promotion. You'll gain access to real, approved missing persons cases.

Registration

Get your API key

Register below to receive an API key instantly. Your key starts in test mode — use it to build and test your integration with fictional seed data.

Instant key issuance

No waiting, no approval queue

Test mode included

Safe sandbox with realistic data

Live mode on request

Access real approved cases

Reference

API Reference

Base URL: https://api.findr.ng/api/v1/developer

Authentication

All requests require your API key, passed either as a header or query parameter:

Header (recommended)

Authorization: Bearer fndr_your_key

Query param

GET /missing-persons?api_key=fndr_your_key

Endpoints

GET/missing-persons

List missing persons cases. Respects your key's mode — test keys return seed data, live keys return real approved cases.

Query parameters

qstringSearch by name or last seen location
status"missing" | "found"Filter by case status
statestringFilter by Nigerian state (e.g. Lagos)
pagenumberPage number (default: 1)
limitnumberResults per page (max: 100, default: 20)
GET/missing-persons/:slug

Retrieve a single missing persons case by its unique slug identifier.

The slug is returned in list responses as the slug field (e.g. amaka-okafor-abc123).

GET/me

Returns information about your API key: name, email, mode (test/live), total request count, and last used timestamp.

Example response

GET /missing-persons

{
  "data": [
    {
      "id": "...",
      "name": "Amaka Okafor",
      "slug": "amaka-okafor-abc123",
      "age": 24,
      "gender": "Female",
      "status": "missing",
      "lastSeenDate": "2024-11-01",
      "lastSeenLocation": "Surulere, Lagos",
      "state": "Lagos",
      "photo": "https://res.cloudinary.com/...",
      "caseNumber": "FND-00123",
      "createdAt": "2024-11-02T10:00:00Z"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 412,
    "pages": 21
  },
  "mode": "test"
}

Environments

Test vs Live mode

Test mode

mode: "test"

  • Returns fictional seed data only (isTestData: true)
  • Safe to use during development — no real cases exposed
  • All responses include a mode field and a notice header
  • Default for all newly registered keys

Live mode

mode: "live"

  • Returns real, approved missing persons cases
  • Only accessible after a manual review and promotion
  • Requires responsible and lawful use of the data
  • Same API, same endpoints — only your key changes

Ready to go live?

Email us to request live mode promotion. We'll review your use case and get back to you.

developers@findr.ng

Limits

Rate limits

Findr is a civic tech platform. We operate on fair-use principles — contact us if you need higher volumes for research or institutional use.

EndpointLimit
All developer endpointsFair use
API key registration1 active key per email

Errors

Error reference

All errors return a JSON body with a message field and, where applicable, a code field.

HTTP codeMeaning
401No API key provided
401Key not recognised
403Key has been revoked
400Validation error (see message)
429Rate limit exceeded

Example error response

{
  "error": true,
  "code": "invalid_api_key",
  "message": "The API key provided is not recognised."
}