Skip to main content

Overview

The Chidori Enterprise API enables you to programmatically create deliveries, process payments, and track shipments in real-time. This reference documents all available endpoints, request/response formats, and error codes.

Base URLs

https://sandbox.chidori.africa/enterprise-service
Use for development and testing. No real deliveries or payments.

Authentication

All API requests require authentication via the X-API-Key header:
curl https://api.chidori.africa/enterprise-service/api/deliveries/list \
  -H "X-API-Key: sk_live_xxx.yyy"
Some endpoints (like key management and sandbox wallet) require JWT Bearer authentication instead. These are noted in their respective documentation.

Request format

All POST requests should include a JSON body with the Content-Type: application/json header:
curl -X POST https://api.chidori.africa/enterprise-service/api/pricing/single \
  -H "X-API-Key: sk_live_xxx.yyy" \
  -H "Content-Type: application/json" \
  -d '{"pickup": {"lat": 6.5244, "lon": 3.3792}, "destination": {"lat": 6.4654, "lon": 3.4064}}'

Response format

All responses follow a consistent JSON structure:
{
  "status": true,
  "data": {
    // Response data here
  }
}

HTTP status codes

CodeDescription
200Success
400Bad request - Invalid parameters
401Unauthorized - Invalid or missing API key
402Payment required - Insufficient wallet balance
403Forbidden - Missing required permission
404Not found - Resource does not exist
503Service unavailable - Sandbox environment not available

Rate limiting

API requests are rate limited to ensure fair usage. If you exceed the limit, you will receive a 429 Too Many Requests response. Contact support if you need higher limits.

API categories

Pricing

Calculate delivery costs for single or bulk deliveries.

Deliveries

Create, retrieve, and list deliveries.

Payments

Process payments and view transaction history.

Webhooks

Receive delivery status change notifications.

Real-time Tracking

Track driver locations via WebSocket (live only).