Adloggs icon
Unified AI-powered Delivery OS

REST API

Adloggs API

A RESTful API to programmatically interact with Adloggs delivery management functionality. Integrate hyperlocal and last-mile delivery management into your platform in minutes.

Last updated: June 25, 2026

SDK / RESTJSON

Authentication

All API requests require a Bearer token in the Authorization header. API keys are available in your Adloggs merchant dashboard.

Keep your API key secret. Never expose it in client-side code or public repositories.
http
// Include in every request header: 

Content-Type: application/json

// API keys are environment-specific:
// adl_live_...  — Production
// adl_test_...  — Sandbox (no real deliveries)

// Obtain your API key from:
// Dashboard → Settings → API Keys

Order Status

Every order transitions through the following states. Subscribe to webhooks to receive real-time status updates.

Delivered
PendingAssignedArrived at PickupPickingOn the WayDelivered
RTO Delivered
PendingAssignedArrived at PickupPickingOn the WayReturnRTO Delivered
Cancelled (from your side)
PendingAssignedCancelled
Cancelled (from the Adloggs side)
PendingAssignedCancelled

Create Order

Submit a new delivery order to the Adloggs platform. The system automatically assigns the best available partner based on your location, SLA, and cost preferences.

POST https://<Adloggs_host>/aa/oporder/v2/create

Required Headers

HeaderValueDescription
AuthorizationAdd header { 'x-api-key': '<Given adloggs key>'} Your Adloggs API key
Content-Typeapplication/jsonRequest body format
json
{
    "partner_order_id": "10012458t",
    "partner_merchant_id": "5421",
    "partner_reference_id": "78964tghbb", //Optional
    "pickup_contact_name": "Ramu",
    "pickup_contact_no": 9000000000,
    "pickup_contact_email": "ramu@gmail.com", //Optional
    "pickup_address": "new bus stand , avinashi, tiruppur",
    "pickup_address_details": {
        "door_no": "10", //Optional
        "street_name": "north street", //Optional
        "city_name": "Avinashi",
        "district_name": "Tiruppur", //Optional
        "state_name": "Tamilnadu",
        "country_name": "India",
        "pincode": "641654"
    },
    "pickup_date_time": "2026-07-05 21: 20",
    "pickup_lat": 11.18731,
    "pickup_long": 77.27788,
    "delivery_contact_name": "Somu",
    "delivery_contact_no": 9000000000,
    "delivery_contact_email": "somu@gmail.com", //Optional
    "delivery_address": "The quest international school, avinashilingapalyam, Tiruppur,tamilnadu,india",
    "delivery_address_details": {
        "door_no": "10", //Optional
        "street_name": "The Quest International school", //Optional
        "city_name": "Avinashi",
        "district_name": "Tiruppur", //Optional
        "state_name": "Tamilnadu",
        "country_name": "India",
        "pincode": "641654"
    },
    "delivery_lat": 11.17350,
    "delivery_long": 77.26865,
    "pickup_otp": 5623, // Optional - 4 digits only
    "delivery_otp": 6698, // Optional - 4 digits only
    "return_otp": 4789, // Optional - 4 digits only
    "order_category": "Food and Beverage", // Food and Beverage, Grocery
    "order_total_price": "455.50",
    "order_total_weight_in_kg": "5.50",
    "items": [
        {
        "name": "Atta",
        "quantity": "2",
        "price": "200.50"
        }
    ],
    "order_description": "dev order", // Optional - delivery and order description
    "utc_offset": 330,
    "payment_type": "COD", // ENUM("COD", "Online") - mandatory for Cash-on-Delivery orders
    "collectible_amount": 0 // Required only if payment_type is COD
}
ParameterTypeRequiredDescription
partner_order_idstringrequiredYour internal order identifier
partner_contact_nostringrequiredCustomer phone number (E.164 format)
pickup_location_latnumberrequiredPickup latitude coordinate
pickup_location_lngnumberrequiredPickup longitude coordinate
delivery_location_latnumberrequiredDelivery latitude coordinate
delivery_location_lngnumberrequiredDelivery longitude coordinate
order_typestringrequired"Trigger" for instant or "Scheduled"
order_valuenumberrequiredOrder value in INR
payment_modestringrequired"Prepaid" or "COD"

Service Availability

Check if the Adloggs delivery service is available between two coordinates before placing an order.

POSThttps://<Adloggs_host>/aa/oporder/v1.2/service/availability

Required Headers

HeaderValueDescription
AuthorizationAdd header { 'x-api-key': '<Given adloggs key>'} Your Adloggs API key
Content-Typeapplication/jsonRequest body format
json
// Query Parameters
// GET /api/order/v1/ServiceAvailability
    {  
        "partner_merchant_id": 5421,   // Optional     
        "partner_order_id": "ADO12345",       
        "pickup_lat": 12.9783692,     
        "pickup_long": 77.64083560,     
        "pickup_pincode": "628621" ,     
        "delivery_lat": 12.95836920,     
        "delivery_long": 77.64083560,     
        "delivery_pincode": "628621" ,     
        "utc_offset": 330, // 330 for india     
        "payment_type": "Online"  // Or “COD” 
    } 

Get Order Status

Retrieve the current status and live tracking details for an existing order using its UUID.

POSThttps://<Adloggs_host>/aa/oporder/getcurrentstatus

Required Headers

HeaderValueDescription
AuthorizationAdd header { 'x-api-key': '<Given adloggs key>'} Your Adloggs API key
Content-Typeapplication/jsonRequest body format
json
// GET /api/order/{order_uuid}
// No request body required

// Path Parameter:
{ 
    "order_uuid" : "4BQhO3m0AFaL_AZ9SXo0c**iPIOWKuDlXzd1RLTeDr5A"
}

Cancel Order

Cancel a pending or assigned order. Orders that are already picked up cannot be cancelled programmatically.

Orders with status "Picking" or "On the Way" cannot be cancelled. A cancellation fee may apply depending on your SLA contract.
POSThttps://<Adloggs_host>/aa/oporder/v1.2/cancel

Required Headers

HeaderValueDescription
AuthorizationAdd header { 'x-api-key': '<Given adloggs key>'} Your Adloggs API key
Content-Typeapplication/jsonRequest body format
json
{
    "order_uuid" : "4ed83e5d-ec49-44ef-a7ea-eba3cfd91416", 
    "order_cancel_description" : "Changed my mind"   
}

Client Webhooks

Adloggs pushes real-time delivery events to your registered webhook URL. Configure your endpoint in Dashboard → Settings → Webhooks.

Your webhook endpoint must respond with HTTP 200 within 5 seconds. Adloggs retries failed deliveries 3 times with exponential backoff.
POSThttps://your-server.com/webhook/adloggs
json
// Adloggs posts this payload to your configured webhook URL
// on every order status transition

{
"order_uuid": "fe2c5bc9-6e2b00478612142**CS8ER9cpmLpbu36LgGYvc",
"order_status_id": 3,
"partner_order_id": "fe2c5bc9-6e2b00478612142",
"deliveryStaffDetails": {
  "name": "viknesh",
  "phone": "9090909090",
  "currentLocation": {
    "lat": "11.17910110",
    "long": "77.28851930"
  }
},
"eta": {
  "to_pickup": 5 //Minutes
},
"rider_platform": {
  "name": "Adloggs",
  "lsp_uniq_id": "CRN1361694246"
},
"reason": null,
"otps": {
  "delivery_otp": "9243",
  "pickup_otp": null,
  "return_otp": null
}
}

Check Wallet Balance

Retrieve the current wallet balance for a merchant account. Useful for building low-balance alerts in your system.

POST https://<Adloggs_host>/aa/oporder/wallet/balance

Required Headers

HeaderValueDescription
AuthorizationAdd header { 'x-api-key': '<Given adloggs key>'} Your Adloggs API key
Content-Typeapplication/jsonRequest body format
json
// GET /api/merchant/wallet/balance
// // No request body required
    {     
        "partner_merchant_id": 96         // Optional 
    } 

Order Flow Examples

Below are the common end-to-end delivery flows and the status transitions your integration should handle.

1. Standard Delivery Flow

🛒
Pending
→
✅
Confirmed
→
🚴
Assigned
→
📦
Picking
→
🚀
On the Way
→
🎉
Delivered

2. Cancellation Flow

🛒
Pending
→
✅
Confirmed
→
❌
Cancelled

3. Failed Delivery + Retry

🚀
On the Way
→
⚠️
Failed
→
🔄
Re-assigned
→
🎉
Delivered

Get started today

Experience seamless logistics management with Adloggs.

One AI-powered platform for your orders, riders and delivery partners, from dispatch to doorstep.