ANLOGIX API PLATFORM

BUILD LOGISTICS INTO YOUR PRODUCT.

Ship, track, price, and automate deliveries through powerful ANLOGIX APIs built for modern businesses.

REST API
Webhooks
Sandbox
API Versioning
POST /v1/shipments
curl -X POST https://sandbox-api.anlogix.com/v1/shipments \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "origin": "Lagos",
    "destination": "Abuja",
    "weight": 5,
    "service": "standard"
  }'
Response (200 OK)
{
  "id": "shp_01H4X7Y8Z9...",
  "status": "created",
  "tracking_number": "ANL983748291"
}

ANLOGIX APIs

Create deep custom integrations using three dedicated logistics infrastructure APIs.

SHIPMENTS API

Create, update, cancel, and manage domestic and international shipment bookings.

POST /v1/shipments
View API →

TRACKING API

Retrieve shipment tracking events, journey milestones, current status, and delivery information.

GET /v1/shipments/{id}/tracking
View API →

RATES API

Calculate shipping prices based on origin, destination, service, dimensions, and weight.

POST /v1/rates
View API →

Getting Started

Get your first shipment running in minutes. Follow this step-by-step workflow to integrate.

01

Get an API Key

Create an account and generate Sandbox credentials in the Keys dashboard console.

02

Create a Shipment

Send a POST request payload containing origin, destination, weight, and service details.

03

Track the Shipment

Use the Tracking API to retrieve live shipment status, courier location, and events list.

04

Listen for Events

Configure webhook endpoints to receive real-time automated delivery updates on your server.

05

Move to Production

Generate Production credentials and switch requests to the production API gateway URL.

Authentication

Authenticate your applications securely via Bearer Tokens across sandbox and production gateways.

Authorization Header Credentials

Pass your keys in the Authorization header of every request. Never expose secret API keys in client-side code, public repositories, or client bundles.

Authorization: Bearer sk_test_your_secret_key

Credential Safety Policy

Always secure your credentials using the following practices:

🔒 Store keys in server-side environment variables on your backend server.

🔒 Never commit API keys to version control hosting repositories (like GitHub).

🔒 Keep environments isolated by separating Sandbox test flows from Production logistics flows.

Environment Routing

Environment API Gateway Endpoint URL Key Prefix Target Uptime
Sandbox https://sandbox-api.anlogix.com/v1 sk_test_ Target: 99.9%
Production https://api.anlogix.com/v1 sk_live_ Target: 99.99%

Error Handling

Understand API error formats and response codes returned by the ANLOGIX platform.

Error Response Format

All error responses return a standard JSON object containing an error wrapper with a machine-readable code and a human-readable message.

HTTP Status Codes

Status Code Error Code Description
400 Bad Request invalid_request Required request body parameter is missing or malformed.
401 Unauthorized invalid_api_key API key is missing, invalid, or expired.
403 Forbidden permission_denied Key lacks permission (e.g. write action with read-only key).
404 Not Found resource_not_found The requested resource does not exist.
429 Too Many Requests rate_limit_exceeded API request rate limit has been exceeded.
500 Server Error api_error An internal server error occurred on the ANLOGIX gateway.
404 Not Found Response
{
  "error": {
    "code": "resource_not_found",
    "message": "The shipment with tracking number ANL999999999 was not found."
  }
}
400 Bad Request Response
{
  "error": {
    "code": "invalid_request",
    "message": "Destination is required."
  }
}

Shipments API Reference

Create and manage shipment bookings.

POST /v1/shipments

Creates a shipping booking and generates a tracking/waybill number. Once booked, a courier will be routed to collect the package from the pickup address.

Request Parameters

Parameter Type Description
origin string required Origin city or logistics hub name (e.g. Lagos).
destination string required Destination city or logistics hub name (e.g. Abuja).
weight number required Gross weight of parcel in kg.
service string Shipping speed: standard or express. Default is standard.
recipient_name string Name of the package recipient.
recipient_phone string Contact phone number of the recipient.
curl -X POST https://sandbox-api.anlogix.com/v1/shipments \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "origin": "Lagos",
    "destination": "Abuja",
    "weight": 5,
    "service": "standard"
  }'
Response Schema
{
  "id": "shp_01H4X7Y8Z9...",
  "status": "created",
  "tracking_number": "ANL983748291",
  "origin": "Lagos",
  "destination": "Abuja",
  "weight": 5,
  "service": "standard",
  "created_at": "2026-08-15T12:00:00Z"
}

Tracking API Reference

Query shipment journey events and proof of deliveries.

GET /v1/shipments/{id}/tracking

Retrieves shipment tracking events, current transit status, journey milestones, and delivery information using a shipment ID or tracking waybill number.

Path Parameters

Parameter Type Description
id string required The unique tracking waybill number (e.g. ANL983748291) or shipment ID.
curl https://sandbox-api.anlogix.com/v1/shipments/ANL983748291/tracking \
  -H "Authorization: Bearer YOUR_API_KEY"
Response Schema
{
  "tracking_number": "ANL983748291",
  "status": "in_transit",
  "origin": "Lagos Hub",
  "destination": "Abuja Branch",
  "estimated_delivery": "2026-08-17",
  "events": [
    {
      "status": "picked_up",
      "location": "Ikeja Hub",
      "timestamp": "2026-08-15T09:20:00Z"
    },
    {
      "status": "in_transit",
      "location": "Lagos Sorting Facility",
      "timestamp": "2026-08-15T12:30:00Z"
    }
  ]
}

Rates API Reference

Query pricing rates dynamically for routes and weights.

POST /v1/rates

Calculates dynamic shipping pricing offers and estimated transit durations based on cargo origin, destination, and weight.

Request Parameters

Parameter Type Description
origin string required Origin city name or logistics hub name (e.g. Lagos).
destination string required Destination city name or logistics hub name (e.g. Abuja).
weight number required Gross weight of the parcel in kg.
curl -X POST https://sandbox-api.anlogix.com/v1/rates \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "origin": "Lagos",
    "destination": "Abuja",
    "weight": 5
  }'
Response Schema
{
  "currency": "NGN",
  "weight": 5,
  "options": [
    {
      "service": "Standard",
      "price": 4500,
      "estimated_days": 3
    },
    {
      "service": "Express Air",
      "price": 9500,
      "estimated_days": 1
    }
  ]
}

Webhooks Documentation

Receive real-time event updates instantly on your application server.

Event-Driven Logistics Hooks

Register webhook URLs to listen for status changes (like when a package is out for delivery or successfully signed for). Webhook events are dispatched via standard HTTP POST requests with a JSON body.

Signature Verification

Verify that webhook events originate genuinely from ANLOGIX by inspecting the signature header:

x-hub-signature-256: sha256=abcdef...

The signature is computed using the HMAC-SHA256 algorithm with your webhook secret signing key (e.g. whsec_...) and the raw JSON request body payload.

Supported Events

Event Name Description
shipment.created Fired immediately when a shipment booking is successfully created.
shipment.picked_up Fired when a courier picks up the cargo from the sender origin.
shipment.in_transit Fired when the package arrives at a transit hubs sorting hub.
shipment.delivered Fired upon successful final cargo delivery.
Node.js Verification
const crypto = require('crypto');

function verifyWebhook(req, secret) {
  const signature = req.headers['x-hub-signature-256'];
  if (!signature) return false;

  const hmac = crypto.createHmac('sha256', secret);
  const digest = 'sha256=' + hmac.update(JSON.stringify(req.body)).digest('hex');
  
  return crypto.timingSafeEqual(
    Buffer.from(signature),
    Buffer.from(digest)
  );
}
Webhook Event Payload Schema
{
  "id": "evt_01H4X8M2J7K...",
  "event": "shipment.in_transit",
  "created_at": "2026-08-15T12:00:00Z",
  "data": {
    "shipment_id": "shp_01H4X7Y8Z9",
    "tracking_number": "ANL983748291",
    "status": "in_transit",
    "location": "Lagos Sorting Hub"
  }
}

API Credentials Console

Manage authentication credentials and test integrations using the interactive API console playground.

API Access Keys

Use Sandbox keys for testing, and switch to Production keys to book real shipments. Always keep your secret keys secure on your servers.

Key Name Environment Permissions API Key Value Created Status Actions

Interactive API Sandbox Console

Fires real JSON request payloads against the ANLOGIX sandbox environment. Enter raw request bodies below.

Request Body (JSON)

Response Panel

Awaiting execution...

Sandbox Integration

Safely test bookings, rates, and webhook simulators without affecting real-world courier networks.

Sandbox Isolation

Sandbox API requests do not book actual logistics carriers or trigger production billing invoices. The gateway simulates all downstream logic and returns mock results.

Sandbox Endpoint:
https://sandbox-api.anlogix.com/v1

Custom Simulation Trigger Headers

You can force specific errors or response latencies in the sandbox environment by passing the following custom HTTP headers in your requests:

Simulation Header Supported Values Simulated Behavior
X-Simulate-Error 401, 404, 429, 500 Returns the specific HTTP error code and standardized response schema.
X-Simulate-Delay Numeric milliseconds (e.g. 2000) Adds artificial response latency (up to 5000ms) to test timeouts.

Webhook Simulation Engine

Configure a local URL listener on your backend server and trigger simulated logistics updates.

Rate Limits

Understand API concurrency limits and how to manage rate limit responses.

Finalizing Rate Limits

Rate limits are currently being finalized. Once active, the API will return standard 429 Too Many Requests HTTP status codes and provide retry-after headers.

HTTP/1.1 429 Too Many Requests
Retry-After: 60

Idempotency

Prevent duplicate operations when making retried shipments booking calls.

Planned Idempotency Keys

Planned / Coming Soon

Idempotency keys prevent double-booking packages when a network timeout causes your client to retry the request. To prepare for this feature, you will pass a unique string in the Idempotency-Key header of POST requests:

Idempotency-Key: order_847291

Changelog

Review API versions releases and structural portal updates.

API Release v1.2.0 August 2026

Released the secure API credentials table dashboard console with confirmation modals, hidden secret unmasking toggles, and persistent local storage keys list.

API Release v1.1.2 August 2026

Added custom simulation headers (X-Simulate-Error and X-Simulate-Delay) to the sandbox gateways to facilitate testing client-side timeouts and error handling wrappers.

API Platform Status

Real-time system health and uptime indexes for all ANLOGIX API components.

Shipments Booking API (POST /v1/shipments) Operational
Waybill Journey Tracking API (GET /v1/shipments/{id}/tracking) Operational
Sourcing & Distance Rates API (POST /v1/rates) Operational
Webhook Delivery Dispatcher Operational
Developer Keys & Authentication Gateway Operational

Uptime History (Last 90 Days)

All logistics routing gateways maintained an aggregate uptime of **99.98%** over the previous 90 operational days.

Developer Support

Connect with our integration support engineers for assistance with your setups.

API Support Email

Email our technical support group directly for integration reviews and enterprise limits.

info@anlogix.com →

Developer Community

Join the ANLOGIX Logistics developer community slack channels to share tools and tips.

Slack channel: anlogix-devs

Security Contact

Report vulnerability logs or credential leak reports directly to our cybersecurity group.

Report Vulnerability →