Booking API
Single, unified API that can handle all booking types efficiently while ensuring multi-tenancy support. Each tenant (e.g., SMILe, NBA, CARGO, Innofulfill, Quick courier) will be treated as a customer with access to services based on their configurations.
Base URL
[https://sandbox-apis.prayog.io/gateway/booking-service]
Booking API Documentation
Overview
The Booking API is designed to enable seamless booking of types (order bookings(ECOMM, HYPERLOCAL, CARGO, COURIER, etc.), vehicle bookings(CAR, BIKE, etc.), slot bookings).
Base URL
https://sandbox-apis.prayog.io/gateway/booking-serviceAvailable Endpoints
- Submit booking information for booking
- Listing with optional filtering
- Retrieves the complete information of a booking
- Update an existing booking’s information
- Bulk order Manifest
- Bulk order cancel
- Webhook
- Retrives all shipments tracking against orderId
- Bulk Orders Create (File Upload)
- Update Bulk Order Manifest Status
- Get Bulk Order Details
1. Submit booking information for booking
To create booking.
OrderId format: YYMMDDHHMMSS + 6 random alphanumeric characters. Total Length: 18 characters Example: 241201143052A7B9C2
Components Breakdown: Timestamp Component (12 characters): Format: 060102150405 (YYMMDDHHMMSS) 24 = Year (2024) 12 = Month (December) 01 = Day 14 = Hour (2 PM) 30 = Minutes 52 = Seconds
Random Component (6 characters): Uses charset: ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 Generated using math/rand with nanosecond seed Example: A7B9C2
Method: POST
Endpoint: /orders
Request Headers:
{ api-key: "your_api_key_here", // OR Authorization: "Bearer your_token_here", Content-Type: application/json}Request Body Parameters
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| orderId | UUID | Yes (System Generated) | Unique key | af273d76-4104-4bf5-afbf-555b6ea6b598 |
| bookingType | VARCHAR | Yes | Booking type | Shipment/Vehicle |
| referenceId | VARCHAR | No | Unique reference ID | REF12345 |
| parcelCategory | VARCHAR | No | Category of parcel | COURIER |
| orderDate | TIMESTAMP | No | Order creation date | 2024-03-30 12:00:00 |
| expectedDeliveryDate | TIMESTAMP | No | Estimated delivery date | 2024-04-05 12:00:00 |
| orderType | VARCHAR | No | Type of order | FORWARD |
| eWaybills | ARRAY | No | Ewaybills of order | [“EWB123456789”, “EWB987654321”] |
| autoManifest | BOOLEAN | No | Auto manifest flag | TRUE |
| returnable | BOOLEAN | No | Return eligibility | FALSE |
| deliveryMode | VARCHAR | No | Mode of delivery | SURFACE |
| deliveryPromise | VARCHAR | No | Delivery promise details | STANDARD |
| orderStatus | VARCHAR | No | Status of Order (DEFAULT DRAFT) | READY_FOR_DISPATCH |
| reason | VARCHAR | No | Reason for cancellation | Wrong order |
| carrierName | VARCHAR | No | Delivery partner name | SMILE |
| carrierID | VARCHAR | No | Delivery partner Id | 10 |
| subCarrierName | VARCHAR | No | Sub-delivery partner name | DTDC |
| subCarrierID | VARCHAR | No | Sub-delivery partner id | 101 |
| vendorCode | VARCHAR | No | In case you want us to generate AWB numbers for shipments then this is mandatory | BOOK |
| utmProduct | VARCHAR | No | Product name | Farma |
| documentType | VARCHAR | No | Document type. Yo can add document type either on an order level or on shipment level | Docs |
| metadata | JSONB | No | Metadata of order | {“source”: “WEB_APP”,“created_by”: “user123”} |
| documents | Documents[] | No | Documents of order | [{“type”: “E-Waybill”, “number”: “DETRFYUG465768”, “url”: “https://drftuygiguh.pdf”}] |
| taxes | Taxes[] | No | Taxes of order | [{“taxId”: 1, “name”: “GST”, “description”: “18% GST”, “type”: “Percentage”, “value”: 18.00, “chargedAmount”: 180.00}] |
| discounts | Discounts[] | No | Discounts of order | [{“discountId”: 1, “name”: “Festive Offer”, “description”: “Flat 10% off”, “type”: “Percentage”, “value”: 10.00, “chargedAmount”: 50.00}] |
| addresses | Addresses[] | No | Addresses | [{“addressId”: 1, “type”: “PICKUP”, “zip”: “560001”, “name”: “John Doe”, “phone”: “9876543210”, “email”: “john@example.com”, “street”: “123, Main Street”, “landmark”: “Near Park”, “city”: “Bangalore”, “state”: “Karnataka”, “country”: “India”, “latitude”: 12.9716, “longitude”: 77.5946, “addressName”: “WAREHOUSE”}] |
| shipments | Shipments[] | No | Shipments of order | [{“shipmentId”: 1, “name”: “Shipment 1”, “description”: “Shipment 1 description”, “type”: “SURFACE”, “value”: 10.00, “chargedAmount”: 50.00}] |
| vehicles | Vehicles[] | No | Vehicles of order | [{“vehicleId”: 1, “name”: “Vehicle 1”, “description”: “Vehicle 1 description”, “type”: “CAR”, “value”: 10.00, “chargedAmount”: 50.00}] |
| slots | Slots[] | No | Slots of order | [{“slotId”: 1, “name”: “Slot 1”, “description”: “Slot 1 description”, “type”: “SURFACE”, “value”: 10.00, “chargedAmount”: 50.00}] |
| payments | Payments | No | Payments of order | [{“paymentId”: 1, “name”: “Payment 1”, “description”: “Payment 1 description”, “type”: “SURFACE”, “value”: 10.00, “chargedAmount”: 50.00}] |
Taxes
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| name | VARCHAR | No | Tax name | GST |
| description | TEXT | No | Tax details | 18% GST |
| type | VARCHAR | No | Type of tax | Percentage |
| value | NUMERIC | No | Tax rate | 18.00 |
| chargedAmount | NUMERIC | No | Tax amount charged | 180.00 |
Discounts
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| name | VARCHAR | No | Discount name | Festive Offer |
| type | VARCHAR | No | Discount type | Percentage |
| value | NUMERIC | No | Discount value | 10.00 |
| description | TEXT | No | Discount details | Flat 10% off |
| chargedAmount | NUMERIC | No | Discounted amount | 50.00 |
Addresses
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| type | VARCHAR | No | Address type | Pickup |
| zip | VARCHAR | No | Zip code | 560001 |
| name | VARCHAR | No | Receiver name | John Doe |
| phone | VARCHAR | No | Contact number | 9876543210 |
| VARCHAR | No | Email address | john@example.com | |
| street | VARCHAR | No | Street address | 123, Main Street |
| landmark | VARCHAR | No | Landmark | Near Park |
| city | VARCHAR | No | City name | Bangalore |
| state | VARCHAR | No | State name | Karnataka |
| country | VARCHAR | No | Country | India |
| countryCode | VARCHAR | No | Country Code | 91 |
| hubId | NUMERIC | No | Id of hub | 111 |
| latitude | NUMERIC | No | Latitude | 12.9716 |
| longitude | NUMERIC | No | Longitude | 77.5946 |
| addressName | VARCHAR | No | Address name | WAREHOUSE |
Shipments
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| awbNumber | VARCHAR | No | Tracking Number | BOOK1 |
| isParent | BOOLEAN | No | Parent Shipment | true |
| isChild | BOOLEAN | No | Child Shipment | true |
| shipmentStatus | VARCHAR | No | Status of shipment | RTO |
| documentType | VARCHAR | No | Document type. You can add document type either on shipment level or on an order level | Docs |
| dimensions | JSONB | No | Shipment dimensions | {“length”:10,“width”:5,“height”:4} |
| physicalWeight | NUMERIC | No | Weight in kg | 5.2 |
| volumetricWeight | NUMERIC | No | Volumetric weight | 6.0 |
| note | TEXT | No | Special instructions | Handle with care |
| specialService | ARRAY | No | Special service | [“RAW_SHIPMENT”, “EXPRESS”] |
| packagingId | Packaging | No | Packaging | {“packagingId”: 1, “type”: “BOX”, “materials”: [“PLASTIC_WRAP”, “THERMAL_INSULATION”], “fragileHandling”: true, “temperatureRange”: { “min”: 2, “max”: 8, “unit”: “C”}} |
| items | Items[] | No | Items | [{“itemId”: 1, “name”: “Laptop”, “quantity”: 2, “weight”: 1.5, “unitPrice”: 50000.00, “sku”: “SKU12345”, “hsnCode”: “84713010”, “dimensions”: {“length”:10,“width”:5,“height”:2}, “description”: “Item description”}] |
Packaging
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| type | varchar | No | packaging type | BOX |
| materials | ARRAY | No | materials | [“PLASTIC_WRAP”, “THERMAL_INSULATION”] |
| fragileHandling | BOOLEAN | No | Fragile Handling | true |
| temperatureRange | JSONB | No | Temperature Range | { “min”: 2, “max”: 8, “unit”: “C”} |
Documents
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| type | varchar | No | Document type | INVOICE |
| url | VARCHAR | No | Document URL | https://example.com/invoice.pdf |
| number | VARCHAR | No | Document number | DETRFYUG465768 |
Items
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| name | VARCHAR | No | Item name | Laptop |
| quantity | INT | No | Number of items | 2 |
| weight | NUMERIC | No | Item weight in kg | 1.5 |
| unitPrice | NUMERIC | No | Price per unit | 50000.00 |
| sku | VARCHAR | No | Stock keeping unit | SKU12345 |
| hsnCode | VARCHAR | No | HSN Code | 84713010 |
| dimensions | JSONB | No | Item dimensions | {“length”:10,“width”:5,“height”:2} |
| description | TEXT | No | Description | Item description |
Vehicle
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| vehicleId | VARCHAR | No | Vehicle id | FTYU24356 |
| rental | BOOLEAN | No | Rental | false |
| purpose | VARCHAR | No | Purpose | To deliver parcels |
| vehicleType | VARCHAR | No | Vehicle Type | TRUCK |
Slots
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| slotType | VARCHAR | No | Slot Type | PICKUP |
| purpose | VARCHAR | No | Purpose | WAREHOUSE_LOADING |
| startTime | TIMESTAMP | No | Start Time | 2024-05-18T10:00:00Z |
| endTime | TIMESTAMP | No | End Time | 2024-05-18T10:00:00Z |
Payments
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| finalAmount | NUMERIC | No | Final payment amount | 500.00 |
| type | VARCHAR | No | Payment type | Prepaid |
| status | VARCHAR | No | Payment status | PAID |
| currency | VARCHAR | No | Currency type | INR |
| paymentMethod | VARCHAR | No | Mode of payment | Credit Card |
| transactionId | VARCHAR | No | Transaction ID | TXN789456 |
| breakdownId | Breakdown | No | Breakdown | {“breakdown_id”: 1, “subtotal”: 500.00, “taxes”: [{“taxId”: 1, “name”: “GST”, “description”: “18% GST”, “type”: “Percentage”, “value”: 18.00, “chargedAmount”: 180.00}], “discounts”: [{“discountId”: 1, “name”: “Festive Offer”, “description”: “Flat 10% off”, “type”: “Percentage”, “value”: 10.00, “chargedAmount”: 50.00}], “otherCharges”: [{“otherChargeId”: 1, “name”: “Handling Fee”, “description”: “Handling fee”, “type”: “Percentage”, “value”: 10.00, “chargedAmount”: 50.00}]} |
| splitPayments | SplitPayments[] | No | Split payments | [{“split_payment_id”: 1, “amount”: 500.00, “status”: “Completed”, “method”: “Credit Card”, “transactionId”: “TXN789456”}] |
Breakdown
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| subtotal | NUMERIC | No | Amount | 500 |
| taxes | Taxes[] | No | Taxes | [{“taxId”: 1, “name”: “GST”, “description”: “18% GST”, “type”: “Percentage”, “value”: 18.00, “chargedAmount”: 180.00}] |
| discounts | Discounts[] | No | Discounts | [{“discountId”: 1, “name”: “Festive Offer”, “description”: “Flat 10% off”, “type”: “Percentage”, “value”: 10.00, “chargedAmount”: 50.00}] |
| otherCharges | OtherCharges[] | No | Other Charges | [{“otherChargeId”: 1, “name”: “Handling Fee”, “description”: “Handling fee”, “type”: “Percentage”, “value”: 10.00, “chargedAmount”: 50.00}] |
OtherCharges
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| name | VARCHAR | No | Tax name | GST |
| description | TEXT | No | Tax details | 18% GST |
| type | VARCHAR | No | Type of tax | Percentage |
| value | NUMERIC | No | Tax rate | 18.00 |
| chargedAmount | NUMERIC | No | Tax amount charged | 180.00 |
SplitPayments
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| id | SERIAL | Yes (Auto Generated) | Primary key | 1 |
| amount | NUMERIC | No | Amount | 500 |
| status | VARCHAR | No | Status | PAID |
| method | VARCHAR | No | Method | UPI |
| transactionId | VARCHAR | No | transaction ID | TXN7890 |
📝 Note: One order can have multiple shipments. Shipment can have multiple items. If Return, Billing addresses are not preset then we will treat Pickup address as Return address and Delivery address as Billing address.
Sample request CURL:
curl --location 'https://sandbox-apis.prayog.io/gateway/booking-service/orders' \--header 'Content-Type: application/json' \--header 'api-key: your_api_key_here' \--data '{"referenceId": "REF-12345","bookingType": "FORWARD","parcelCategory": "COURIER","orderDate": "2025-10-29T10:30:00Z","expectedDeliveryDate": "2025-11-01T18:00:00Z","orderType": "B2C","autoManifest": true,"returnable": true,"deliveryMode": "EXPRESS","deliveryPromise": "STANDARD","orderStatus": "CONFIRMED","carrierName": "Blue Dart","carrierId": "CARRIER_001","subCarrierName": "Blue Dart Express","subCarrierId": "SUB_CARRIER_001","vendorCode": "VENDOR_ABC","utmProduct": "web_booking","documentType": "INVOICE","reason": "Standard delivery","eWaybills": [ { "number": "EWB123456789", "validUntil": "2025-11-05" }],"metadata": { "source": "web_portal", "customerNotes": "Please handle with care", "specialInstructions": "Call before delivery"},"addresses": [ { "type": "PICKUP", "name": "John Doe", "phone": "+919876543210", "email": "john.doe@example.com", "street": "123 MG Road", "landmark": "Near City Mall", "city": "Mumbai", "state": "Maharashtra", "country": "India", "countryCode": "IN", "zip": "413118", "latitude": 19.0760, "longitude": 72.8777, "addressName": "Warehouse A", "hubId": 101 }, { "type": "DELIVERY", "name": "Jane Smith", "phone": "+919876543211", "email": "jane.smith@example.com", "street": "456 Brigade Road", "landmark": "Opposite Coffee Day", "city": "Bangalore", "state": "Karnataka", "country": "India", "countryCode": "IN", "zip": "411001", "latitude": 12.9716, "longitude": 77.5946, "addressName": "Home", "hubId": 102 }],"shipments": [ { "isParent": true, "isChild": false, "awbNumber": "AWB123456789", "thirdPartyAwbNumber": "3RD_AWB_987654", "shipmentStatus": "PENDING", "documentType": "INVOICE", "physicalWeight": 2.5, "volumetricWeight": 3.0, "note": "Fragile items inside", "dimensions": { "length": 30, "width": 20, "height": 15, "unit": "cm" }, "specialService": { "insurance": true, "codEnabled": false, "priorityHandling": true }, "packaging": { "type": "BOX", "fragileHandling": true, "materials": [ "cardboard", "bubble_wrap" ], "temperatureRange": { "min": 15, "max": 25, "unit": "celsius" } }, "items": [ { "name": "Laptop", "quantity": 1, "weight": 2.0, "unitPrice": 50000.00, "sku": "LAP-001", "hsnCode": "8471", "description": "Dell XPS 13 Laptop", "dimensions": { "length": 28, "width": 18, "height": 2, "unit": "cm" }, "taxes": [ { "type": "GST", "name": "CGST", "value": 4500.00, "percentage": 9.0 }, { "type": "GST", "name": "SGST", "value": 4500.00, "percentage": 9.0 } ], "discounts": [ { "type": "PROMOTIONAL", "name": "Festival Discount", "value": 5000.00, "percentage": 10.0 } ] }, { "name": "Mouse", "quantity": 1, "weight": 0.5, "unitPrice": 500.00, "sku": "MOUSE-001", "hsnCode": "8471", "description": "Wireless Mouse", "dimensions": { "length": 10, "width": 6, "height": 4, "unit": "cm" }, "taxes": [ { "type": "GST", "name": "CGST", "value": 45.00, "percentage": 9.0 }, { "type": "GST", "name": "SGST", "value": 45.00, "percentage": 9.0 } ] } ] }],"payment": { "finalAmount": 50590.00, "type": "PREPAID", "status": "PENDING", "currency": "INR", "paymentMethod": "CREDIT_CARD", "transactionId": "TXN_123456789", "breakdown": { "subTotal": 50500.00, "taxes": [ { "type": "GST", "name": "CGST", "value": 4545.00, "percentage": 9.0 }, { "type": "GST", "name": "SGST", "value": 4545.00, "percentage": 9.0 } ], "discounts": [ { "type": "PROMOTIONAL", "name": "Festival Sale", "value": 5000.00, "percentage": 10.0 } ], "otherCharges": [ { "type": "SHIPPING", "name": "Shipping Charges", "value": 100.00 }, { "type": "PACKAGING", "name": "Packaging Charges", "value": 50.00 } ] }, "splitPayments": [ { "amount": 30000.00, "method": "CREDIT_CARD", "status": "SUCCESS", "transactionId": "SPLIT_TXN_001" }, { "amount": 20590.00, "method": "WALLET", "status": "SUCCESS", "transactionId": "SPLIT_TXN_002" } ]},"documents": [ { "type": "INVOICE", "number": "INV-2025-001", "url": "https://example.com/documents/invoice-001.pdf" }, { "type": "PACKING_LIST", "number": "PL-2025-001", "url": "https://example.com/documents/packing-list-001.pdf" }],"taxes": [ { "type": "GST", "name": "Total GST", "value": 9090.00, "percentage": 18.0 }],"discounts": [ { "type": "PROMOTIONAL", "name": "New Customer Discount", "value": 5000.00, "percentage": 10.0 }]}'Sample Success Response
{ "status": "success", "statusCode": 201, "message": "order created successfully", "data": { "id": 27604, "bookingType": "FORWARD", "orderId": "251029111208F2JM7N", "referenceId": "REF-12345", "parcelCategory": "COURIER", "orderDate": "2025-10-29T10:30:00Z", "expectedDeliveryDate": "2025-11-01T18:00:00Z", "orderType": "B2C", "eWaybills": [ { "number": "EWB123456789", "validUntil": "2025-11-05" } ], "autoManifest": true, "returnable": true, "deliveryMode": "EXPRESS", "deliveryPromise": "STANDARD", "orderStatus": "CONFIRMED", "carrierName": "Blue Dart", "carrierId": "CARRIER_001", "subCarrierName": "Blue Dart Express", "subCarrierId": "SUB_CARRIER_001", "vendorCode": "UVWU", "reason": "Standard delivery", "utmProduct": "web_booking", "documentType": "INVOICE", "metadata": { "createdBy": "41334d3a-0011-7063-64c9-2df0d350dad8", "customerNotes": "Please handle with care", "source": "web_portal", "specialInstructions": "Call before delivery" }, "createdAt": "2025-10-29T11:12:08.02033869Z", "updatedAt": "2025-10-29T11:12:08.02033869Z", "addresses": [ { "id": 109896, "type": "PICKUP", "zip": "413118", "name": "John Doe", "phone": "+919876543210", "email": "john.doe@example.com", "street": "123 MG Road", "landmark": "Near City Mall", "city": "Mumbai", "state": "Maharashtra", "country": "India", "countryCode": "IN", "hubId": 101, "latitude": 19.076, "longitude": 72.8777, "addressName": "Warehouse A" }, { "id": 109897, "type": "DELIVERY", "zip": "411001", "name": "Jane Smith", "phone": "+919876543211", "email": "jane.smith@example.com", "street": "456 Brigade Road", "landmark": "Opposite Coffee Day", "city": "Bangalore", "state": "Karnataka", "country": "India", "countryCode": "IN", "hubId": 102, "latitude": 12.9716, "longitude": 77.5946, "addressName": "Home" } ], "documents": [ { "id": 2329, "type": "INVOICE", "number": "INV-2025-001", "url": "https://example.com/documents/invoice-001.pdf" }, { "id": 2330, "type": "PACKING_LIST", "number": "PL-2025-001", "url": "https://example.com/documents/packing-list-001.pdf" } ], "shipments": [ { "id": 127844, "isParent": true, "awbNumber": "AWB123456789", "thirdPartyAwbNumber": "3RD_AWB_987654", "shipmentStatus": "PENDING", "documentType": "INVOICE", "dimensions": { "height": 15, "length": 30, "unit": "cm", "width": 20 }, "physicalWeight": 2.5, "volumetricWeight": 3, "note": "Fragile items inside", "specialService": { "codEnabled": false, "insurance": true, "priorityHandling": true }, "packaging": { "id": 24, "type": "BOX", "materials": [ "cardboard", "bubble_wrap" ], "fragileHandling": true, "temperatureRange": { "max": 25, "min": 15, "unit": "celsius" } }, "items": [ { "id": 168739, "name": "Laptop", "quantity": 1, "weight": 2, "unitPrice": 50000, "sku": "LAP-001", "hsnCode": "8471", "dimensions": { "height": 2, "length": 28, "unit": "cm", "width": 18 }, "description": "Dell XPS 13 Laptop", "taxes": [ { "id": 7125, "name": "CGST", "type": "GST", "value": 4500 }, { "id": 7126, "name": "SGST", "type": "GST", "value": 4500 } ], "discounts": [ { "id": 1056, "name": "Festival Discount", "type": "PROMOTIONAL", "value": 5000 } ] }, { "id": 168740, "name": "Mouse", "quantity": 1, "weight": 0.5, "unitPrice": 500, "sku": "MOUSE-001", "hsnCode": "8471", "dimensions": { "height": 4, "length": 10, "unit": "cm", "width": 6 }, "description": "Wireless Mouse", "taxes": [ { "id": 7127, "name": "CGST", "type": "GST", "value": 45 }, { "id": 7128, "name": "SGST", "type": "GST", "value": 45 } ], "discounts": null } ] } ], "vehicles": null, "slots": null, "payment": { "id": 27365, "finalAmount": 50590, "type": "PREPAID", "status": "PENDING", "currency": "INR", "paymentMethod": "CREDIT_CARD", "transactionId": "TXN_123456789", "breakdown": { "id": 3342, "subTotal": 50500, "taxes": [ { "id": 7123, "name": "CGST", "type": "GST", "value": 4545 }, { "id": 7124, "name": "SGST", "type": "GST", "value": 4545 } ], "discounts": [ { "id": 1055, "name": "Festival Sale", "type": "PROMOTIONAL", "value": 5000 } ], "otherCharges": [ { "id": 10733, "name": "Shipping Charges", "type": "SHIPPING", "value": 100 }, { "id": 10734, "name": "Packaging Charges", "type": "PACKAGING", "value": 50 } ] }, "splitPayments": [ { "id": 43, "amount": 30000, "status": "SUCCESS", "method": "CREDIT_CARD", "transactionId": "SPLIT_TXN_001" }, { "id": 44, "amount": 20590, "status": "SUCCESS", "method": "WALLET", "transactionId": "SPLIT_TXN_002" } ] }, "taxes": [ { "id": 7129, "name": "Total GST", "type": "GST", "value": 9090 } ], "discounts": [ { "id": 1057, "name": "New Customer Discount", "type": "PROMOTIONAL", "value": 5000 } ], "orderSource": { "id": 0 } }}Sample Error Response
{ "status": "error", "statusCode": 401, "message": "prospay rates transaction failed: Please login to access this resource."}{ "status": "error", "statusCode": 500, "message": "serviceability check failed: serviceability check failed: API returned success=false"}2. Listing with optional filtering
To get the bookings of current tenant.
Method: GET
Endpoint: /orders
Request Headers:
{ api-key: "your_api_key_here", // OR Authorization: "Bearer your_token_here", Content-Type: application/json}Request Query Parameters
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| page | NUMERIC | No | Pagination | 1 |
| limit | NUMERIC | No | Pagination | 10 |
| orderType | VARCHAR | No | Type of order | REVERSE |
| deliveryMode | VARCHAR | No | Mode of delivery | AIR |
| destinationZip | NUMERIC | No | Delivery pincode | 413102 |
| paymentType | VARCHAR | No | Type of payment | COD |
| destinationCity | VARCHAR | No | Delivery city | Pune |
| orderId | VARCHAR | No | Id of order | TEST1 |
| startDate | DATE | No | Start Date | 2025-05-20 |
| endDate | DATE | No | End date | 2025-05-28 |
| sortKey | VARCHAR | No | Key on which you need to apply sort | deliveryMode |
| sortOrder | VARCHAR | No | Order of sort | DESC |
| awbNumber | VARCHAR | No | Tracking number | BOOK0000000262 |
| orderStatus | VARCHAR | No | Status of orders | READY_FOR_DISPATCH, DRAFT |
| deliveryPromise | VARCHAR | No | Delivery promise | STANDARD, FAST_TRACK, VALUE_PLUS |
| parcelCategory | VARCHAR | No | Category of parcel | INTERNATIONAL |
| createdBy | VARCHAR | No | Created by | user123 |
| filterByCurrentUser | BOOLEAN | No | If you want to fetch all orders of current user then send this key true | true |
| paymentStatus | VARCHAR | No | Status of payment | paid |
Sample request CURL:
curl --location 'https://sandbox-apis.prayog.io/gateway/booking-service/orders?page=1&limit=20&orderStatus=CONFIRMED' \--header 'api-key: your_api_key_here'Sample Success Response
{ "status": "success", "statusCode": 200, "message": "orders fetched successfully", "data": [ { "id": 27605, "bookingType": "FORWARD", "orderId": "2510291113270M3R8H", "referenceId": "REF-12345", "parcelCategory": "COURIER", "orderDate": "2025-10-29T10:30:00Z", "expectedDeliveryDate": "2025-11-01T18:00:00Z", "orderType": "B2C", "eWaybills": [ { "number": "EWB123456789", "validUntil": "2025-11-05" } ], "autoManifest": true, "returnable": true, "deliveryMode": "EXPRESS", "deliveryPromise": "STANDARD", "orderStatus": "CONFIRMED", "carrierName": "Blue Dart", "carrierId": "CARRIER_001", "subCarrierName": "Blue Dart Express", "subCarrierId": "SUB_CARRIER_001", "reason": "Standard delivery", "utmProduct": "web_booking", "documentType": "INVOICE", "metadata": { "source": "web_portal", "createdBy": "41334d3a-0011-7063-64c9-2df0d350dad8", "customerNotes": "Please handle with care", "specialInstructions": "Call before delivery" }, "createdAt": "2025-10-29T11:13:27.607294Z", "updatedAt": "2025-10-29T11:13:27.607294Z", "addresses": [ { "id": 109898, "type": "PICKUP", "zip": "413118", "name": "John Doe", "phone": "+919876543210", "email": "john.doe@example.com", "street": "123 MG Road", "landmark": "Near City Mall", "city": "Mumbai", "state": "Maharashtra", "country": "India", "countryCode": "IN", "hubId": 101, "latitude": 19.076, "longitude": 72.8777, "addressName": "Warehouse A" }, { "id": 109899, "type": "DELIVERY", "zip": "411001", "name": "Jane Smith", "phone": "+919876543211", "email": "jane.smith@example.com", "street": "456 Brigade Road", "landmark": "Opposite Coffee Day", "city": "Bangalore", "state": "Karnataka", "country": "India", "countryCode": "IN", "hubId": 102, "latitude": 12.9716, "longitude": 77.5946, "addressName": "Home" } ], "documents": [ { "id": 2331, "type": "INVOICE", "number": "INV-2025-001", "url": "https://example.com/documents/invoice-001.pdf" }, { "id": 2332, "type": "PACKING_LIST", "number": "PL-2025-001", "url": "https://example.com/documents/packing-list-001.pdf" } ], "shipments": [ { "id": 127845, "isParent": true, "awbNumber": "AWB123456789", "thirdPartyAwbNumber": "3RD_AWB_987654", "shipmentStatus": "PENDING", "documentType": "INVOICE", "dimensions": { "unit": "cm", "width": 20, "height": 15, "length": 30 }, "physicalWeight": 2.5, "volumetricWeight": 3, "note": "Fragile items inside", "specialService": { "insurance": true, "codEnabled": false, "priorityHandling": true }, "packaging": { "id": 25, "type": "BOX", "materials": [ "cardboard", "bubble_wrap" ], "fragileHandling": true, "temperatureRange": { "max": 25, "min": 15, "unit": "celsius" } }, "items": [ { "id": 168741, "name": "Laptop", "quantity": 1, "weight": 2, "unitPrice": 50000, "sku": "LAP-001", "hsnCode": "8471", "dimensions": { "unit": "cm", "width": 18, "height": 2, "length": 28 }, "description": "Dell XPS 13 Laptop", "taxes": [ { "id": 7132, "name": "CGST", "type": "GST", "value": 4500 }, { "id": 7133, "name": "SGST", "type": "GST", "value": 4500 } ], "discounts": [ { "id": 1059, "name": "Festival Discount", "type": "PROMOTIONAL", "value": 5000 } ] }, { "id": 168742, "name": "Mouse", "quantity": 1, "weight": 0.5, "unitPrice": 500, "sku": "MOUSE-001", "hsnCode": "8471", "dimensions": { "unit": "cm", "width": 6, "height": 4, "length": 10 }, "description": "Wireless Mouse", "taxes": [ { "id": 7134, "name": "CGST", "type": "GST", "value": 45 }, { "id": 7135, "name": "SGST", "type": "GST", "value": 45 } ], "discounts": [] } ] } ], "vehicles": [], "slots": [], "payment": { "id": 27366, "finalAmount": 50590, "type": "PREPAID", "status": "PENDING", "currency": "INR", "paymentMethod": "CREDIT_CARD", "transactionId": "TXN_123456789", "breakdown": { "id": 3343, "subTotal": 50500, "taxes": [ { "id": 7130, "name": "CGST", "type": "GST", "value": 4545 }, { "id": 7131, "name": "SGST", "type": "GST", "value": 4545 } ], "discounts": [ { "id": 1058, "name": "Festival Sale", "type": "PROMOTIONAL", "value": 5000 } ], "otherCharges": [ { "id": 10735, "name": "Shipping Charges", "type": "SHIPPING", "value": 100 }, { "id": 10736, "name": "Packaging Charges", "type": "PACKAGING", "value": 50 } ] }, "splitPayments": [ { "id": 45, "amount": 30000, "status": "SUCCESS", "method": "CREDIT_CARD", "transactionId": "SPLIT_TXN_001" }, { "id": 46, "amount": 20590, "status": "SUCCESS", "method": "WALLET", "transactionId": "SPLIT_TXN_002" } ] }, "taxes": [ { "id": 7136, "name": "Total GST", "type": "GST", "value": 9090 } ], "discounts": [ { "id": 1060, "name": "New Customer Discount", "type": "PROMOTIONAL", "value": 5000 } ], "orderSource": { "id": 0 } }, { "id": 27604, "bookingType": "FORWARD", "orderId": "251029111208F2JM7N", "referenceId": "REF-12345", "parcelCategory": "COURIER", "orderDate": "2025-10-29T10:30:00Z", "expectedDeliveryDate": "2025-11-01T18:00:00Z", "orderType": "B2C", "eWaybills": [ { "number": "EWB123456789", "validUntil": "2025-11-05" } ], "autoManifest": true, "returnable": true, "deliveryMode": "EXPRESS", "deliveryPromise": "STANDARD", "orderStatus": "CONFIRMED", "carrierName": "Blue Dart", "carrierId": "CARRIER_001", "subCarrierName": "Blue Dart Express", "subCarrierId": "SUB_CARRIER_001", "reason": "Standard delivery", "utmProduct": "web_booking", "documentType": "INVOICE", "metadata": { "source": "web_portal", "createdBy": "41334d3a-0011-7063-64c9-2df0d350dad8", "customerNotes": "Please handle with care", "specialInstructions": "Call before delivery" }, "createdAt": "2025-10-29T11:12:08.020338Z", "updatedAt": "2025-10-29T11:12:08.020338Z", "addresses": [ { "id": 109896, "type": "PICKUP", "zip": "413118", "name": "John Doe", "phone": "+919876543210", "email": "john.doe@example.com", "street": "123 MG Road", "landmark": "Near City Mall", "city": "Mumbai", "state": "Maharashtra", "country": "India", "countryCode": "IN", "hubId": 101, "latitude": 19.076, "longitude": 72.8777, "addressName": "Warehouse A" }, { "id": 109897, "type": "DELIVERY", "zip": "411001", "name": "Jane Smith", "phone": "+919876543211", "email": "jane.smith@example.com", "street": "456 Brigade Road", "landmark": "Opposite Coffee Day", "city": "Bangalore", "state": "Karnataka", "country": "India", "countryCode": "IN", "hubId": 102, "latitude": 12.9716, "longitude": 77.5946, "addressName": "Home" } ], "documents": [ { "id": 2329, "type": "INVOICE", "number": "INV-2025-001", "url": "https://example.com/documents/invoice-001.pdf" }, { "id": 2330, "type": "PACKING_LIST", "number": "PL-2025-001", "url": "https://example.com/documents/packing-list-001.pdf" } ], "shipments": [ { "id": 127844, "isParent": true, "awbNumber": "AWB123456789", "thirdPartyAwbNumber": "3RD_AWB_987654", "shipmentStatus": "PENDING", "documentType": "INVOICE", "dimensions": { "unit": "cm", "width": 20, "height": 15, "length": 30 }, "physicalWeight": 2.5, "volumetricWeight": 3, "note": "Fragile items inside", "specialService": { "insurance": true, "codEnabled": false, "priorityHandling": true }, "packaging": { "id": 24, "type": "BOX", "materials": [ "cardboard", "bubble_wrap" ], "fragileHandling": true, "temperatureRange": { "max": 25, "min": 15, "unit": "celsius" } }, "items": [ { "id": 168739, "name": "Laptop", "quantity": 1, "weight": 2, "unitPrice": 50000, "sku": "LAP-001", "hsnCode": "8471", "dimensions": { "unit": "cm", "width": 18, "height": 2, "length": 28 }, "description": "Dell XPS 13 Laptop", "taxes": [ { "id": 7125, "name": "CGST", "type": "GST", "value": 4500 }, { "id": 7126, "name": "SGST", "type": "GST", "value": 4500 } ], "discounts": [ { "id": 1056, "name": "Festival Discount", "type": "PROMOTIONAL", "value": 5000 } ] }, { "id": 168740, "name": "Mouse", "quantity": 1, "weight": 0.5, "unitPrice": 500, "sku": "MOUSE-001", "hsnCode": "8471", "dimensions": { "unit": "cm", "width": 6, "height": 4, "length": 10 }, "description": "Wireless Mouse", "taxes": [ { "id": 7127, "name": "CGST", "type": "GST", "value": 45 }, { "id": 7128, "name": "SGST", "type": "GST", "value": 45 } ], "discounts": [] } ] } ], "vehicles": [], "slots": [], "payment": { "id": 27365, "finalAmount": 50590, "type": "PREPAID", "status": "PENDING", "currency": "INR", "paymentMethod": "CREDIT_CARD", "transactionId": "TXN_123456789", "breakdown": { "id": 3342, "subTotal": 50500, "taxes": [ { "id": 7123, "name": "CGST", "type": "GST", "value": 4545 }, { "id": 7124, "name": "SGST", "type": "GST", "value": 4545 } ], "discounts": [ { "id": 1055, "name": "Festival Sale", "type": "PROMOTIONAL", "value": 5000 } ], "otherCharges": [ { "id": 10733, "name": "Shipping Charges", "type": "SHIPPING", "value": 100 }, { "id": 10734, "name": "Packaging Charges", "type": "PACKAGING", "value": 50 } ] }, "splitPayments": [ { "id": 43, "amount": 30000, "status": "SUCCESS", "method": "CREDIT_CARD", "transactionId": "SPLIT_TXN_001" }, { "id": 44, "amount": 20590, "status": "SUCCESS", "method": "WALLET", "transactionId": "SPLIT_TXN_002" } ] }, "taxes": [ { "id": 7129, "name": "Total GST", "type": "GST", "value": 9090 } ], "discounts": [ { "id": 1057, "name": "New Customer Discount", "type": "PROMOTIONAL", "value": 5000 } ], "orderSource": { "id": 0 } } ], "count": 8, "page": 1, "limit": 10, "totalPages": 1, "currentPage": 1}Sample Error Response
{ "error": "Internal Server Error", "status": 500}3. Retrieves the complete information of a booking
Retrieves detailed information about a specific booking.
Method: GET
Endpoint: /orders/{orderId}
Request Headers:
{ api-key: "your_api_key_here", // OR Authorization: "Bearer your_token_here", Content-Type: application/json}Request Query Parameters
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| orderId | VARCHAR | YES | Order Id | 32465CFGVH |
Sample request CURL:
curl --location 'https://sandbox-apis.prayog.io/gateway/booking-service/orders/2509011137385GU6VT' \--header 'api-key: your_api_key_here' \Sample Success Response
{ "data": { "id": 39, "orderId": "9a073ac7-5bb9-4bee-9430-8422835e03f5", "parcelCategory": "COURIER", "orderDate": "2024-05-17T08:30:30Z", "expectedDeliveryDate": "2024-05-20T08:30:30Z", "orderType": "REVERSE", "eWaybills": [ "EWB123456789", "EWB987654321" ], "autoManifest": true, "returnable": true, "deliveryMode": "AIR", "deliveryPromise": "valuePlus", "referenceId": "CFYGUYIHO", "orderStatus": "DRAFT", "reason": "Wrong order" "metadata": { "source": "WEB_APP", "createdBy": "user123" }, "createdAt": "2025-05-21T18:05:00.959659+05:30", "updatedAt": "2025-05-21T18:05:00.959659+05:30", "addresses": [ { "id": 153, "orderId": 39, "type": "PICKUP", "zip": "411028", "name": "Rohan", "phone": "6313131313", "email": "rohan@yopmail.com", "street": "32, pocket D, sector 8", "landmark": "Makarba", "city": "Ahmedabad", "state": "Gujarat", "country": "India", "latitude": 27.745435, "longitude": 77.7543543, "addressName": "WAREHOUSE", "createdAt": "2025-05-21T18:05:01.004923+05:30", "updatedAt": "2025-05-21T18:05:01.004923+05:30" }, { "id": 154, "orderId": 39, "type": "DELIVERY", "zip": "411028", "name": "Rohan", "phone": "6313131313", "email": "rohan@yopmail.com", "street": "32, pocket D, sector 8", "landmark": "Makarba", "city": "Baramati", "state": "Gujarat", "country": "India", "latitude": 27.745435, "longitude": 77.7543543, "createdAt": "2025-05-21T18:05:01.025864+05:30", "updatedAt": "2025-05-21T18:05:01.025864+05:30" }, { "id": 155, "orderId": 39, "type": "BILLING", "zip": "382418", "name": "Rohan", "phone": "6313131313", "email": "rohan@yopmail.com", "street": "32, pocket D, sector 8", "landmark": "Makarba", "city": "Ahmedabad", "state": "Gujarat", "country": "India", "latitude": 27.745435, "longitude": 77.7543543, "createdAt": "2025-05-21T18:05:01.044634+05:30", "updatedAt": "2025-05-21T18:05:01.044634+05:30" }, { "id": 156, "orderId": 39, "type": "RETURN", "zip": "382418", "name": "Rohan", "phone": "6313131313", "email": "rohan@yopmail.com", "street": "32, pocket D, sector 8", "landmark": "Makarba", "city": "Ahmedabad", "state": "Gujarat", "country": "India", "latitude": 27.745435, "longitude": 77.7543543, "createdAt": "2025-05-21T18:05:01.066159+05:30", "updatedAt": "2025-05-21T18:05:01.066159+05:30" } ], "documents": [ { "id": 44, "orderId": 39, "type": "E-Waybill", "number": "DETRFYUG465768", "url": "https://drftuygiguh.pdf", "createdAt": "2025-05-21T18:05:01.088346+05:30", "updatedAt": "2025-05-21T18:05:01.088346+05:30" } ], "shipments": [ { "id": 60, "orderId": 39, "awbNumber": "BOOK0000000104", "dimensions": { "length": 30, "width": 20, "height": 10 }, "physicalWeight": 300, "volumetricWeight": 400, "isParent": true, "isChild": false "note": "Handle with care", "specialService": [ "RAW_SHIPMENT", "EXPRESS" ], "packaging": { "id": 40, "shipmentId": 60, "type": "BOX", "materials": [ "PLASTIC_WRAP", "THERMAL_INSULATION" ], "fragileHandling": true, "temperatureRange": { "min": 2, "max": 8, "unit": "C" }, "createdAt": "2025-05-21T18:05:01.125301+05:30", "updatedAt": "2025-05-21T18:05:01.125301+05:30" }, "items": [ { "id": 105, "shipmentId": 60, "name": "Paper Bag", "quantity": 5, "weight": 60, "unitPrice": 255, "sku": "PA1475", "hsnCode": "91308", "dimensions": { "length": 30, "width": 20, "height": 10 }, "description": "Item description", "taxes": null, "discounts": null, "createdAt": "2025-05-21T18:05:01.145789+05:30", "updatedAt": "2025-05-21T18:05:01.145789+05:30" }, { "id": 106, "shipmentId": 60, "name": "Paper Bag", "quantity": 5, "weight": 60, "unitPrice": 255, "sku": "PA1475", "hsnCode": "91308", "dimensions": { "length": 30, "width": 20, "height": 10 }, "description": "Item description", "taxes": null, "discounts": null, "createdAt": "2025-05-21T18:05:01.167686+05:30", "updatedAt": "2025-05-21T18:05:01.167686+05:30" } ], "createdAt": "2025-05-21T18:05:01.10796+05:30", "updatedAt": "2025-05-21T18:05:01.10796+05:30" } ], "vehicles": [ { "id": 19, "orderId": 39, "vehicleId": "FTYU24356", "purpose": "To deliver parcels", "vehicleType": "TRUCK", "createdAt": "2025-05-21T18:05:01.188219+05:30", "updatedAt": "2025-05-21T18:05:01.188219+05:30" } ], "slots": [ { "id": 19, "orderId": 39, "slotType": "PICKUP", "purpose": "WAREHOUSE_LOADING", "startTime": "2024-05-18T10:00:00Z", "endTime": "2024-05-18T12:00:00Z", "createdAt": "2025-05-21T18:05:01.206215+05:30", "updatedAt": "2025-05-21T18:05:01.206215+05:30" } ], "payment": { "id": 39, "orderId": 39, "finalAmount": 1500, "type": "COD", "status": "PAID", "currency": "INR", "paymentMethod": "CREDIT_CARD", "transactionId": "TXN123456", "breakdown": { "id": 39, "paymentId": 39, "subTotal": 1500, "taxes": [ { "id": 115, "orderId": 0, "itemId": 0, "breakdownId": 39, "name": "Gst", "description": "Gst charges", "type": "PERCENTAGE", "value": 18, "chargedAmount": 20, "createdAt": "2025-05-21T18:05:01.269018+05:30", "updatedAt": "2025-05-21T18:05:01.269018+05:30" } ], "discounts": [ { "id": 95, "orderId": 0, "itemId": 0, "breakdownId": 39, "name": "Coupon", "type": "FIXED_AMOUNT", "value": 20, "description": "Festival Discount Coupon", "createdAt": "2025-05-21T18:05:01.287634+05:30", "updatedAt": "2025-05-21T18:05:01.287634+05:30" } ], "otherCharges": [ { "id": 110, "breakdownId": 39, "name": "Shipping Charges", "type": "FIXED_AMOUNT", "value": 55, "description": "Order delivery charges", "chargedAmount": 20, "createdAt": "2025-05-21T18:05:01.305898+05:30", "updatedAt": "2025-05-21T18:05:01.305898+05:30" } ], "createdAt": "2025-05-21T18:05:01.249032+05:30", "updatedAt": "2025-05-21T18:05:01.249032+05:30" }, "splitPayments": [ { "id": 19, "paymentId": 39, "amount": 500, "status": "PAID", "method": "UPI", "transactionId": "TXN7890", "createdAt": "2025-05-21T18:05:01.325974+05:30", "updatedAt": "2025-05-21T18:05:01.325974+05:30" } ], "createdAt": "2025-05-21T18:05:01.223803+05:30", "updatedAt": "2025-05-21T18:05:01.223803+05:30" }, "taxes": [ { "id": 116, "orderId": 39, "itemId": 0, "breakdownId": 0, "name": "Gst", "description": "Gst charges", "type": "PERCENTAGE", "value": 18, "chargedAmount": 20, "createdAt": "2025-05-21T18:05:01.345161+05:30", "updatedAt": "2025-05-21T18:05:01.345161+05:30" } ], "discounts": [ { "id": 96, "orderId": 39, "itemId": 0, "breakdownId": 0, "name": "Coupon", "type": "FIXED_AMOUNT / Percentage / Rupees", "value": 20, "description": "Festival Discount Coupon", "chargedAmount": 20, "createdAt": "2025-05-21T18:05:01.36349+05:30", "updatedAt": "2025-05-21T18:05:01.36349+05:30" } ] }, "message": "Order fetched successfully", "status": 200}Sample Error Response
{ "status": "error", "error": "Order not found.", "statusCode": 404}{ "error": "Internal Server Error", "status": 500}4. Update an existing booking information
Updates an existing booking with new information.
Method: PATCH
Endpoint: /orders/{orderId}
Request Headers:
{ api-key: "your_api_key_here", // OR Authorization: "Bearer your_token_here", Content-Type: application/json}Sample request CURL:
curl --location --request PATCH 'https://sandbox-apis.prayog.io/gateway/booking-service/orders/2510291113270M3R8H' \--header 'api-key: your_api_key_here' \--header 'Content-Type: application/json' \--data '{ "carrierName": "DHL", "carrierId": "DHL001", "subCarrierName": "DHL Express", "subCarrierId": "DHLEXP001", "reason": "Order confirmed by customer", "metadata": { "note": "Updated via API", "priority": "high" }}'Sample response
{ "status": "success", "statusCode": 200, "message": "order updated successfully", "data": { "id": 27605, "bookingType": "FORWARD", "orderId": "2510291113270M3R8H", "referenceId": "REF-12345", "parcelCategory": "COURIER", "orderDate": "2025-10-29T10:30:00Z", "expectedDeliveryDate": "2025-11-01T18:00:00Z", "orderType": "B2C", "eWaybills": [ { "number": "EWB123456789", "validUntil": "2025-11-05" } ], "autoManifest": true, "returnable": true, "deliveryMode": "EXPRESS", "deliveryPromise": "STANDARD", "orderStatus": "CONFIRMED", "carrierName": "Blue Dart", "carrierId": "CARRIER_001", "subCarrierName": "Blue Dart Express", "subCarrierId": "SUB_CARRIER_001", "reason": "Standard delivery", "utmProduct": "web_booking", "documentType": "INVOICE", "metadata": { "note": "Updated via API", "priority": "high" }, "createdAt": "2025-10-29T11:13:27.607294Z", "updatedAt": "2025-10-29T12:29:51.652074Z", "addresses": [ { "id": 109898, "type": "PICKUP", "zip": "413118", "name": "John Doe", "phone": "+919876543210", "email": "john.doe@example.com", "street": "123 MG Road", "landmark": "Near City Mall", "city": "Mumbai", "state": "Maharashtra", "country": "India", "countryCode": "IN", "hubId": 101, "latitude": 19.076, "longitude": 72.8777, "addressName": "Warehouse A" }, { "id": 109899, "type": "DELIVERY", "zip": "411001", "name": "Jane Smith", "phone": "+919876543211", "email": "jane.smith@example.com", "street": "456 Brigade Road", "landmark": "Opposite Coffee Day", "city": "Bangalore", "state": "Karnataka", "country": "India", "countryCode": "IN", "hubId": 102, "latitude": 12.9716, "longitude": 77.5946, "addressName": "Home" } ], "documents": [ { "id": 2331, "type": "INVOICE", "number": "INV-2025-001", "url": "https://example.com/documents/invoice-001.pdf" }, { "id": 2332, "type": "PACKING_LIST", "number": "PL-2025-001", "url": "https://example.com/documents/packing-list-001.pdf" } ], "shipments": [ { "id": 127845, "isParent": true, "awbNumber": "AWB123456789", "thirdPartyAwbNumber": "3RD_AWB_987654", "shipmentStatus": "PENDING", "documentType": "INVOICE", "dimensions": { "unit": "cm", "width": 20, "height": 15, "length": 30 }, "physicalWeight": 2.5, "volumetricWeight": 3, "note": "Fragile items inside", "specialService": { "insurance": true, "codEnabled": false, "priorityHandling": true }, "packaging": { "id": 25, "type": "BOX", "materials": [ "cardboard", "bubble_wrap" ], "fragileHandling": true, "temperatureRange": { "max": 25, "min": 15, "unit": "celsius" } }, "items": [ { "id": 168741, "name": "Laptop", "quantity": 1, "weight": 2, "unitPrice": 50000, "sku": "LAP-001", "hsnCode": "8471", "dimensions": { "unit": "cm", "width": 18, "height": 2, "length": 28 }, "description": "Dell XPS 13 Laptop", "taxes": [ { "id": 7132, "name": "CGST", "type": "GST", "value": 4500 }, { "id": 7133, "name": "SGST", "type": "GST", "value": 4500 } ], "discounts": [ { "id": 1059, "name": "Festival Discount", "type": "PROMOTIONAL", "value": 5000 } ] }, { "id": 168742, "name": "Mouse", "quantity": 1, "weight": 0.5, "unitPrice": 500, "sku": "MOUSE-001", "hsnCode": "8471", "dimensions": { "unit": "cm", "width": 6, "height": 4, "length": 10 }, "description": "Wireless Mouse", "taxes": [ { "id": 7134, "name": "CGST", "type": "GST", "value": 45 }, { "id": 7135, "name": "SGST", "type": "GST", "value": 45 } ], "discounts": [] } ] } ], "vehicles": [], "slots": [], "payment": { "id": 27366, "finalAmount": 50590, "type": "PREPAID", "status": "PENDING", "currency": "INR", "paymentMethod": "CREDIT_CARD", "transactionId": "TXN_123456789", "breakdown": { "id": 3343, "subTotal": 50500, "taxes": [ { "id": 7130, "name": "CGST", "type": "GST", "value": 4545 }, { "id": 7131, "name": "SGST", "type": "GST", "value": 4545 } ], "discounts": [ { "id": 1058, "name": "Festival Sale", "type": "PROMOTIONAL", "value": 5000 } ], "otherCharges": [ { "id": 10735, "name": "Shipping Charges", "type": "SHIPPING", "value": 100 }, { "id": 10736, "name": "Packaging Charges", "type": "PACKAGING", "value": 50 } ] }, "splitPayments": [ { "id": 45, "amount": 30000, "status": "SUCCESS", "method": "CREDIT_CARD", "transactionId": "SPLIT_TXN_001" }, { "id": 46, "amount": 20590, "status": "SUCCESS", "method": "WALLET", "transactionId": "SPLIT_TXN_002" } ] }, "taxes": [ { "id": 7136, "name": "Total GST", "type": "GST", "value": 9090 } ], "discounts": [ { "id": 1060, "name": "New Customer Discount", "type": "PROMOTIONAL", "value": 5000 } ], "orderSource": { "id": 0 } }}Sample Error Response
{ "error": "Internal Server Error", "status": 500}5. Bulk order Manifest
Bulk/Single order manifest
Method: POST
Endpoint: /orders/manifest/bulk
Request Headers:
{ api-key: "your_api_key_here", // OR Authorization: "Bearer your_token_here", Content-Type: application/json}Reuqest Body Parameters
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| orderIds | Array | Yes | Array of order ids | [“250904124036HX4ION”] |
Sample request CURL:
curl --location 'https://sandbox-apis.prayog.io/gateway/booking-service/orders/manifest/bulk' \--header 'api-key: your_api_key_here' \--data '{ "orderIds": ["250904124036HX4ION"]}'Sample response
{ "status": "success", "statusCode": 200, "message": "bulk manifest completed successfully", "data": "manifest operation started successfully"}Note: For failure/error case you need to check kestra logs
6. Bulk order cancel
Bulk/Single order cancel
Method: POST
Endpoint: /orders/bulk/cancel
Request Headers:
{ api-key: "your_api_key_here", // OR Authorization: "Bearer your_token_here", Content-Type: application/json}Reuqest Body Parameters
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| orders | Orders[] | Yes | Array of orders | [{“orderId”: “123444”,“reason”: “Custom reason 1”},{“orderId”: “123445”, “reason”: “Custom reason 2”}“] |
Orders
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| orderId | VARCHAR | Yes | Id of order | 123444 |
| reason | VARCHAR | No | Reason for cancellation | Custom reason 2 |
Sample request CURL:
curl --location 'https://sandbox-apis.prayog.io/gateway/booking-service/orders/bulk/cancel' \--header 'api-key: your_api_key_here' \--header 'Content-Type: application/json' \--data '{ "orders": [ { "orderId": "2510291113270M3R8H", "reason": "xyz" }]}'Sample response
{ "status": "success", "statusCode": 200, "message": "Orders cancelled successfully", "data": { "cancelledCount": 1 }}7. Webhook
Incomming webhook
Method: POST
Endpoint: /orders/webhook
Request Headers:
{ api-key: "your_api_key_here", // OR Authorization: "Bearer your_token_here", Content-Type: application/json}Reuqest Body Parameters
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| event | VARCHAR | Yes | Name of event | AUDIT |
| orderId | VARCHAR | No | Id of order. Either send orderId or awbNumber based on updation key | 3546789XFCGVHB |
| awbNumber | VARCHAR | No | Shipment Id. Either send orderId or awbNumber based on updation key | RTFYTU456789 |
Note: Rest of the keys will be dynamic based on event & data updation.
Sample request CURL:
curl --location 'https://sandbox-apis.prayog.io/gateway/booking-service/orders/webhook' \--header 'api-key: your_api_key_here' \--header 'Content-Type: application/json' \--data '{ "awbNumber": "25052200049033", "event": "STATUS_UPDATE", "shipmentStatus": "inscan_at_hub"}'Sample response
{ "status": "success", "statusCode": 200, "message": "order updated successfully", "data": { "id": 393, "orderId": "250820053716DLYJA1", "parcelCategory": "COURIER", "orderDate": "2025-08-20T05:37:16.376Z", "expectedDeliveryDate": "0001-01-01T00:00:00Z", "eWaybills": [], "autoManifest": true, "deliveryMode": "Surface", "deliveryPromise": "Standard", "orderStatus": "READY_FOR_DISPATCH", "metadata": { "source": "NBA", "createdBy": "21931d2a-00d1-70ba-6cd0-cccc9315b5fe" }, "createdAt": "2025-08-20T05:37:16.634645Z", "updatedAt": "2025-08-20T05:37:21.332353Z", "addresses": [ { "id": 1490, "type": "PICKUP", "zip": "560076", "name": "DEMO FOR TESTING BENGALURU", "street": "XYZ", "city": "BENGALURU", "state": "KARNATAKA", "country": "India" }, { "id": 1491, "type": "DELIVERY", "zip": "560108", "name": "ANHSULLL", "phone": "8951499596", "email": "kuma@gmail.com", "street": "HSR LAYOUT, BENGALURU, KARNATAKA, INDIA", "city": "BENGALURU", "state": "KARNATAKA", "country": "India" }, { "id": 1492, "type": "RETURN", "zip": "560076", "name": "DEMO FOR TESTING BENGALURU", "street": "XYZ", "city": "BENGALURU", "state": "KARNATAKA", "country": "India" } ], "documents": [], "shipments": [ { "id": 641, "isParent": true, "awbNumber": "25052200049033", "shipmentStatus": "inscan_at_hub", "documentType": "DOX", "dimensions": { "width": 0, "height": 0, "length": 0 }, "physicalWeight": 0.05, "packaging": { "id": 0 }, "items": [ { "id": 579, "name": "DOCUMENT - TENDER DOCUMENT", "quantity": 1, "taxes": [], "discounts": [] } ] } ], "vehicles": [], "slots": [], "payment": { "id": 0, "breakdown": { "id": 0, "subTotal": 0, "taxes": null, "discounts": null, "otherCharges": null }, "splitPayments": null }, "taxes": [], "discounts": [], "orderSource": { "id": 0 } }}8. Retrives all shipments tracking against orderId
To see every shipment’s current status based on orderId
Method: GET
Endpoint: orders/shipment-tracking/{orderId}
Request Headers:
{ api-key: "your_api_key_here", // OR Authorization: "Bearer your_token_here", Content-Type: application/json}Reuqest Query Parameters
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| orderId | VARCHAR | Yes | Id of order | 3456789FCGFHJ |
Sample request CURL:
curl --location 'https://sandbox-apis.prayog.io/gateway/booking-service/orders/shipment-tracking/250820061346FL8O95' \--header 'api-key: your_api_key_here'Sample response
{ "status": "success", "statusCode": 200, "message": "Shipment tracking fetched successfully", "data": [ { "trackingId": "25052100020202", "status": "READY_FOR_DISPATCH", "location": "", "deliveryPartnerName": "prayog", "statusTimestamp": "2025-08-20T06:13:51.290Z", "event": "MANIFESTED", "cAwbNumber": "", "createdAt": "2025-08-20T06:13:51.366Z", "category": "READY_FOR_DISPATCH" }, { "trackingId": "25400830664", "status": "READY_FOR_DISPATCH", "location": "", "deliveryPartnerName": "prayog", "statusTimestamp": "2025-08-20T06:13:51.290Z", "event": "MANIFESTED", "cAwbNumber": "", "createdAt": "2025-08-20T06:13:51.366Z", "category": "READY_FOR_DISPATCH" }, { "trackingId": "25400830665", "status": "READY_FOR_DISPATCH", "location": "", "deliveryPartnerName": "prayog", "statusTimestamp": "2025-08-20T06:13:51.290Z", "event": "MANIFESTED", "cAwbNumber": "", "createdAt": "2025-08-20T06:13:51.366Z", "category": "READY_FOR_DISPATCH" }, { "trackingId": "25400830666", "status": "READY_FOR_DISPATCH", "location": "", "deliveryPartnerName": "prayog", "statusTimestamp": "2025-08-20T06:13:51.290Z", "event": "MANIFESTED", "cAwbNumber": "", "createdAt": "2025-08-20T06:13:51.365Z", "category": "READY_FOR_DISPATCH" } ]}9. Bulk Orders Create (File Upload)
Create multiple orders by uploading a file containing order details.
Method: POST
Endpoint: /bulk-orders
Request Headers:
{ api-key: "your_api_key_here", // OR Authorization: "Bearer your_token_here", Content-Type: multipart/form-data}Request Parameters
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| file | FILE | Yes | File containing bulk order data (CSV, Excel, etc.) | orders.csv |
Sample request CURL:
curl --location 'https://sandbox-apis.prayog.io/gateway/booking-service/bulk-orders' \--header 'api-key: your_api_key_here' \--form 'file=@"/path/to/your/file.csv"'Sample Success Response
{ "status": "success", "statusCode": 202, "message": "Your orders are under processing", "data": { "autoManifest": false, "bulkId": "1762250638768384775" }}Sample Error Response
{ "status": "error", "statusCode": 400, "message": "Invalid file format"}10. Update Bulk Order Manifest Status
Update the manifest status for a bulk order group.
Method: POST
Endpoint: /bulk-orders/{bulkOrderId}/manifest
Request Headers:
{ api-key: "your_api_key_here", // OR Authorization: "Bearer your_token_here", Content-Type: application/json}Request Path Parameters
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| bulkOrderId | VARCHAR | Yes | ID of the bulk order | 1762250638768384775 |
Request Body Parameters
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| groupOrderStatus | VARCHAR | Yes | Status to update for the bulk order group | READY_TO_DISPATCH |
Sample request CURL:
curl --location 'https://sandbox-apis.prayog.io/gateway/booking-service/bulk-orders/1762250638768384775/manifest' \--header 'api-key: your_api_key_here' \--header 'Content-Type: application/json' \--data '{ "groupOrderStatus": "READY_TO_DISPATCH"}'Sample Success Response
{ "status": "success", "statusCode": 200, "message": "Bulk order manifested successfully", "data": { "bulkId": "1762250638768384775", "groupOrderStatus": "READY_TO_DISPATCH" }}Sample Error Response
{ "status": "error", "statusCode": 404, "message": "Bulk order not found"}11. Get Bulk Order Details
Retrieve details and status of a specific bulk order.
Method: GET
Endpoint: /bulk-orders/{bulkOrderId}
Request Headers:
{ api-key: "your_api_key_here", // OR Authorization: "Bearer your_token_here", Content-Type: application/json}Request Path Parameters
| Field Name | Type | Mandatory | Description | Example |
|---|---|---|---|---|
| bulkOrderId | VARCHAR | Yes | ID of the bulk order | 1762250638768384775 |
Sample request CURL:
curl --location 'https://sandbox-apis.prayog.io/gateway/booking-service/bulk-orders/1762250638768384775' \--header 'api-key: your_api_key_here'Sample Success Response
{ "status": "success", "statusCode": 200, "message": "Bulk order details fetched successfully", "data": { "id": 37, "bulkId": "1762250638768384775", "tenantId": "68c3cce121fc3f9691aae1e6", "status": "done", "groupOrderStatus": "READY_TO_DISPATCH", "totalOrders": 200, "completedOrders": 0, "failedOrders": 0, "userId": "e133ed7a-5001-70d4-fa2c-5f81c2ebc611", "excelPath": "https://prayog-files-sandbox.s3.ap-south-1.amazonaws.com/bulk-orders/68c3cce121fc3f9691aae1e6/bulk_order_1762250638768384775_20251104_100852.xlsx", "createdAt": "2025-11-04T10:04:04.667114Z", "updatedAt": "2025-11-04T10:09:23.449165Z", "completedAt": "2025-11-04T10:09:23.449166Z" }}📝 Note:
Bulk Order Status Values:
processing: Orders are currently being processeddone: Orders have been successfully placed and the Excel sheet is ready for download (available atexcelPath)
Sample Error Response
{ "status": "error", "statusCode": 404, "message": "Bulk order not found"}