7feastr
Get Rate & ETAAPITrack ShipmentContactBlog
LoginRegister
Documentation/Logistics API
Getting startedMenu
Overview

Get started

Getting startedAuthenticationSandbox and production

Plan your integration

Coverage & delivery timesPricing

API reference

Quotes & shipmentsTrackingWallet & disputes

Integrate

WebhooksErrors & rate limits

Resources

Changelog
K
Overview

Get started

Getting startedAuthenticationSandbox and production

Plan your integration

Coverage & delivery timesPricing

API reference

Quotes & shipmentsTrackingWallet & disputes

Integrate

WebhooksErrors & rate limits

Resources

Changelog
7feastr

Nigeria's food delivery and logistics infrastructure. Order from your favourite local restaurants, or ship anywhere in the country with 7feastr Logistics.

support@7feastr.com
+234 905 606 2230
Lagos, Nigeria

Company

  • About Us
  • Blog

Services

  • Nearby Restaurants
  • Logistics
  • Track Shipment
  • API Documentation

Food in Kaduna

  • Food Delivery in Kaduna
  • Shawarma
  • Jollof Rice
  • Chicken
  • Suya & Grills
  • Pizza
  • Swallow & Soup

Partners

  • Become an Agent
  • Become an Ambassador

Support

  • FAQ
  • Contact
  • System status
  • Privacy Policy
  • Terms of Service
  • Monetary Policy
  • Refund Policy

© 2026 7feastr Technologies Ltd. All rights reserved.

Get started

Getting started

What the 7feastr Logistics API does, how a delivery flows through it, and your first request.

Last updated 21 October 2026

The 7feastr Logistics API lets your business price, book and track door-to-door deliveries anywhere we deliver in Nigeria. You get an all-in quote in one call, book the shipment against your prepaid wallet in a second, and follow it to the recipient's door through status updates, public tracking and webhooks.

How a delivery works

  1. Quote. Call POST /rates/estimate with the pickup and dropoff addresses, the weight and the service type. You get a price with VAT shown separately, an ETA and a quoteId that is valid for 10 minutes.
  2. Book. Call POST /shipments with the quoteId and the contact details. Your wallet is charged exactly the quoted price and a pickup is booked on our delivery network.
  3. Track. The shipment moves through pending, assigned, picked_up, in_transit and delivered. Read it with the API, share the public tracking link with your customer, or receive webhooks.

Doorstep pickup and door delivery are always included in the price.

Base URL

Text
https://api.7feastr.com/api/v1/logistics/v1

Sandbox and production share this base URL. The environment is chosen by the API key you send: SB_… keys run in sandbox and PROD_… keys run in production. Switching environments never requires a code change, only a different key. See Sandbox and production.

Before you start

  • Create a merchant account in the merchant dashboard. A sandbox API key is issued as soon as you finish onboarding, and your sandbox wallet is prefunded with ₦500,000 of test credit.
  • Keep your API key on your server. Never ship it in a mobile app or browser code.
  • Check Coverage & delivery times to confirm we deliver where you need us, and Pricing to understand what you will be charged.

Your first request

Get a quote for a 2 kg parcel from Ikeja to Lekki in Lagos:

curl -X POST "https://api.7feastr.com/api/v1/logistics/v1/rates/estimate" \
  -H "Authorization: Bearer $SEVENFEASTR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "serviceType": "consolidated",
    "pickupAddress": "14 Allen Avenue",
    "pickupCity": "Ikeja",
    "pickupState": "Lagos",
    "dropoffAddress": "8 Admiralty Way",
    "dropoffCity": "Lekki",
    "dropoffState": "Lagos",
    "packageWeightKg": 2
  }'
// Node.js 18+ (run as an ES module, or inside an async function)
const res = await fetch("https://api.7feastr.com/api/v1/logistics/v1/rates/estimate", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.SEVENFEASTR_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    serviceType: "consolidated",
    pickupAddress: "14 Allen Avenue",
    pickupCity: "Ikeja",
    pickupState: "Lagos",
    dropoffAddress: "8 Admiralty Way",
    dropoffCity: "Lekki",
    dropoffState: "Lagos",
    packageWeightKg: 2,
  }),
});
const { data } = await res.json();
console.log(data.quoteId, data.pricing.total);
import os
import requests

res = requests.post(
    "https://api.7feastr.com/api/v1/logistics/v1/rates/estimate",
    headers={"Authorization": f"Bearer {os.environ['SEVENFEASTR_API_KEY']}"},
    json={
        "serviceType": "consolidated",
        "pickupAddress": "14 Allen Avenue",
        "pickupCity": "Ikeja",
        "pickupState": "Lagos",
        "dropoffAddress": "8 Admiralty Way",
        "dropoffCity": "Lekki",
        "dropoffState": "Lagos",
        "packageWeightKg": 2,
    },
    timeout=30,
)
data = res.json()["data"]
print(data["quoteId"], data["pricing"]["total"])

A successful response wraps the quote in the standard envelope:

JSON
{
  "success": true,
  "message": "OK",
  "sandbox": true,
  "data": {
    "quoteId": "QUOTE-9C41E07B2D5F4A18",
    "quoteExpiresAt": "2026-10-21T09:40:00.000Z",
    "tripType": "intrastate",
    "serviceType": "consolidated",
    "distanceKm": 27.4,
    "packageWeightKg": 2,
    "etaDays": 1,
    "etaAt": "2026-10-22T09:30:00.000Z",
    "pricing": { "subtotal": 7900, "vatPercent": 7.5, "vatAmount": 592.5, "total": 8492.5 },
    "currency": "NGN"
  }
}

The example above is abridged. The full response is documented in Quotes & shipments.

Response envelope

Every response uses the same JSON envelope, so you can handle all endpoints the same way.

FieldTypeDescription
successbooleantrue on success, false on error
messagestring"OK" on success
sandboxbooleantrue when the request ran in sandbox
dataobject or arrayThe resource or list you asked for
metaobjectLists only: { page, limit, total, totalPages }
errorobjectErrors only: { code, message }. See Errors & rate limits

Explore the docs

PageWhat it covers
AuthenticationAPI keys, headers and production access
Sandbox and productionThe two environments and how to go live
Coverage & delivery timesThe states we serve, door-delivery checks and ETAs
PricingHow prices are built, VAT, rounding and example quotes
Quotes & shipmentsGet a quote, then book the shipment
TrackingStatuses, delivery events, ETA, proof of delivery and cancelling
Wallet & disputesBalance, transactions and disputes
WebhooksEvents, payloads and signature verification
Errors & rate limitsError codes, HTTP statuses and request limits
ChangelogWhat changed in the API and when
Next Authentication

On this page

  • How a delivery works
  • Base URL
  • Before you start
  • Your first request
  • Response envelope
  • Explore the docs