{
    "info": {
        "name": "Hubbazzar Shipping API",
        "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
    },
    "auth": {
        "type": "bearer",
        "bearer": [
            {
                "key": "token",
                "value": "{{token}}",
                "type": "string"
            }
        ]
    },
    "variable": [
        {
            "key": "base_url",
            "value": "https://hubbazzar.com/api/v1/shipping"
        },
        {
            "key": "token",
            "value": "PASTE_YOUR_TOKEN"
        }
    ],
    "item": [
        {
            "name": "Authentication",
            "item": [
                {
                    "name": "Login (get token)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/auth/login",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "auth",
                                "login"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Exchange your panel email + password for a Bearer token. Use this for server-to-server integrations that prefer revocable tokens; otherwise copy the static token from Panel \u2192 API Settings.",
                        "auth": {
                            "type": "noauth"
                        },
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"email\": \"user@example.com\",\n    \"password\": \"secret\",\n    \"device_name\": \"my-erp\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Get profile",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/auth/profile",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "auth",
                                "profile"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Returns the account the token belongs to. A cheap way to verify a token works."
                    }
                },
                {
                    "name": "Rotate token",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/auth/token/rotate",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "auth",
                                "token",
                                "rotate"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Revokes the token used for this call and returns a new one. Store the new token immediately \u2014 the old one stops working at once."
                    }
                },
                {
                    "name": "Logout (revoke token)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/auth/logout",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "auth",
                                "logout"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Revokes the token used for this call."
                    }
                }
            ]
        },
        {
            "name": "Warehouses (pickup addresses)",
            "item": [
                {
                    "name": "List warehouses",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/warehouses",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "warehouses"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "All your pickup/return addresses. `pick_address_id` is what you pass when creating shipments."
                    }
                },
                {
                    "name": "Create warehouse",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/warehouses",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "warehouses"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Saves the address and registers it with Delhivery. If the courier call fails the warehouse is still saved and the response carries `warning: true` \u2014 retry with the sync endpoint.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"address_title\": \"Main Warehouse\",\n    \"sender_name\": \"Acme Store\",\n    \"full_address\": \"Plot 4, Industrial Area Phase 2\",\n    \"phone\": \"9811122233\",\n    \"email\": \"ops@acme.com\",\n    \"pincode\": \"110020\",\n    \"city\": \"New Delhi\",\n    \"state\": \"Delhi\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Get warehouse",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/warehouses/:id",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "warehouses",
                                ":id"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "7"
                                }
                            ]
                        },
                        "description": ""
                    }
                },
                {
                    "name": "Update warehouse",
                    "request": {
                        "method": "PUT",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/warehouses/:id",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "warehouses",
                                ":id"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "7"
                                }
                            ]
                        },
                        "description": "Updates the address on our side only. Changes are not pushed to the courier automatically \u2014 call the sync endpoint afterwards.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"address_title\": \"Main Warehouse\",\n    \"sender_name\": \"Acme Store\",\n    \"full_address\": \"Plot 4, Industrial Area Phase 2\",\n    \"phone\": \"9811122233\",\n    \"email\": \"ops@acme.com\",\n    \"pincode\": \"110020\",\n    \"city\": \"New Delhi\",\n    \"state\": \"Delhi\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Delete warehouse",
                    "request": {
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/warehouses/:id",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "warehouses",
                                ":id"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "7"
                                }
                            ]
                        },
                        "description": "Removes the address from your account. Existing shipments are not affected."
                    }
                },
                {
                    "name": "Sync warehouse with Delhivery",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/warehouses/:id/sync",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "warehouses",
                                ":id",
                                "sync"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "7"
                                }
                            ]
                        },
                        "description": "Re-registers the warehouse with Delhivery. Use after a failed create or after editing the address."
                    }
                },
                {
                    "name": "Nimbus Post \u2014 send OTP (step 1)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/warehouses/:id/nimbuspost/send-otp",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "warehouses",
                                ":id",
                                "nimbuspost",
                                "send-otp"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "7"
                                }
                            ]
                        },
                        "description": "Nimbus Post verifies the pickup phone by OTP before accepting a warehouse. This sends the OTP to the warehouse phone."
                    }
                },
                {
                    "name": "Nimbus Post \u2014 verify OTP & register (step 2)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/warehouses/:id/nimbuspost/sync",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "warehouses",
                                ":id",
                                "nimbuspost",
                                "sync"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "7"
                                }
                            ]
                        },
                        "description": "",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"otp\": \"482913\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                }
            ]
        },
        {
            "name": "Couriers, Rates & Serviceability",
            "item": [
                {
                    "name": "List available couriers + price",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/couriers",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "couriers"
                            ],
                            "query": [
                                {
                                    "key": "express_type",
                                    "value": "surface"
                                },
                                {
                                    "key": "weight",
                                    "value": "0.5"
                                },
                                {
                                    "key": "payment_mode",
                                    "value": "COD"
                                },
                                {
                                    "key": "order_amount",
                                    "value": "1499"
                                }
                            ],
                            "variable": []
                        },
                        "description": "The same list the panel shows on \"Create Order\". Returns every courier you can book for a given mode and weight, with the exact amount that will be debited. Use the returned `courier_code` in POST /shipments."
                    }
                },
                {
                    "name": "Get rate card",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/rate-card",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "rate-card"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Your full active rate card(s): weight slabs, zones, forward/RTO rates and COD fees, grouped by courier."
                    }
                },
                {
                    "name": "Calculate rate",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/calculate-rate",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "calculate-rate"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Price one courier for one parcel. Weights above the largest slab are charged per extra 0.5 KG.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"courier_code\": \"Delhivery\",\n    \"weight\": 0.5,\n    \"express_type\": \"surface\",\n    \"payment_mode\": \"COD\",\n    \"order_amount\": 1499\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Check pincode serviceability",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/pincode/:pincode",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "pincode",
                                ":pincode"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "pincode",
                                    "value": "122001"
                                }
                            ]
                        },
                        "description": "Delhivery serviceability for a pincode (prepaid / COD / pickup / reverse). Use it as a pre-check before offering shipping at checkout."
                    }
                },
                {
                    "name": "Bulk pincode check",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/pincode/bulk",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "pincode",
                                "bulk"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"pincodes\": [\n        \"110001\",\n        \"400001\"\n    ]\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                }
            ]
        },
        {
            "name": "Shipments",
            "item": [
                {
                    "name": "Create shipment",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/shipments",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "shipments"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Books the shipment with the courier, debits your wallet and returns the AWB. This runs the exact same logic as the panel's Create Order, so wallet/credit checks, commission and courier rules behave identically.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"client_order_id\": \"MY-ORD-2001\",\n    \"invoice_number\": \"INV-2001\",\n    \"consignee_name\": \"Rahul Sharma\",\n    \"consignee_mobile\": \"9876543210\",\n    \"consignee_email\": \"rahul@example.com\",\n    \"consignee_address1\": \"Flat 12, Green Park Apartments\",\n    \"consignee_address2\": \"Sector 15\",\n    \"consignee_pincode\": \"122001\",\n    \"consignee_city\": \"Gurugram\",\n    \"consignee_state\": \"Haryana\",\n    \"address_type\": \"Home\",\n    \"payment_mode\": \"COD\",\n    \"order_amount\": 1499,\n    \"pick_address_id\": \"Main Warehouse\",\n    \"return_address_id\": \"Main Warehouse\",\n    \"express_type\": \"surface\",\n    \"courier_code\": \"Delhivery\",\n    \"shipment_weight\": 0.5,\n    \"shipment_length\": 20,\n    \"shipment_width\": 15,\n    \"shipment_height\": 10,\n    \"products\": [\n        {\n            \"product_name\": \"Cotton T-Shirt\",\n            \"product_quantity\": 2,\n            \"product_price\": 749.5,\n            \"sku\": \"TSH-001\"\n        }\n    ]\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Bulk create (up to 50)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/shipments/bulk",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "shipments",
                                "bulk"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Creates many shipments in one call. Each order is processed independently with the same rules as single create; one failure does not stop the rest.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"orders\": [\n        {\n            \"client_order_id\": \"MY-ORD-2001\",\n            \"invoice_number\": \"INV-2001\",\n            \"consignee_name\": \"Rahul Sharma\",\n            \"consignee_mobile\": \"9876543210\",\n            \"consignee_email\": \"rahul@example.com\",\n            \"consignee_address1\": \"Flat 12, Green Park Apartments\",\n            \"consignee_address2\": \"Sector 15\",\n            \"consignee_pincode\": \"122001\",\n            \"consignee_city\": \"Gurugram\",\n            \"consignee_state\": \"Haryana\",\n            \"address_type\": \"Home\",\n            \"payment_mode\": \"COD\",\n            \"order_amount\": 1499,\n            \"pick_address_id\": \"Main Warehouse\",\n            \"return_address_id\": \"Main Warehouse\",\n            \"express_type\": \"surface\",\n            \"courier_code\": \"Delhivery\",\n            \"shipment_weight\": 0.5,\n            \"shipment_length\": 20,\n            \"shipment_width\": 15,\n            \"shipment_height\": 10,\n            \"products\": [\n                {\n                    \"product_name\": \"Cotton T-Shirt\",\n                    \"product_quantity\": 2,\n                    \"product_price\": 749.5,\n                    \"sku\": \"TSH-001\"\n                }\n            ]\n        }\n    ]\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "List shipments",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/shipments",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "shipments"
                            ],
                            "query": [
                                {
                                    "key": "status",
                                    "value": "in_transit"
                                },
                                {
                                    "key": "per_page",
                                    "value": "20"
                                }
                            ],
                            "variable": []
                        },
                        "description": ""
                    }
                },
                {
                    "name": "Get shipment",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/shipments/:id",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "shipments",
                                ":id"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "1024"
                                }
                            ]
                        },
                        "description": "Full details of one shipment (consignee, dimensions, products, charges, refund and delivery info). `id` is the `order_id` returned at creation."
                    }
                },
                {
                    "name": "Track shipment",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/shipments/:id/track",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "shipments",
                                ":id",
                                "track"
                            ],
                            "query": [
                                {
                                    "key": "sync",
                                    "value": "1"
                                }
                            ],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "1024"
                                }
                            ]
                        },
                        "description": "Status + scan history. Works for every courier (Delhivery, Shadowfax, Amazon Shipping, Nimbus Post) and returns the same shape. Without `sync` you get cached data (refreshed by courier webhooks); with `sync=1` we fetch live from the courier first."
                    }
                },
                {
                    "name": "Download label (PDF)",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/shipments/:id/label",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "shipments",
                                ":id",
                                "label"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "1024"
                                }
                            ]
                        },
                        "description": "Returns the shipping label as a PDF file (`Content-Type: application/pdf`). It is the same document the panel prints \u2014 Amazon Shipping's own label for Amazon orders, your configured label template for the rest. Save the response body to a file."
                    }
                },
                {
                    "name": "Bulk labels (one merged PDF)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/shipments/labels",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "shipments",
                                "labels"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Up to 100 labels merged into a single PDF. Orders without an AWB are skipped; the number included is in the `X-Label-Count` header.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"order_ids\": [\n        1024,\n        1025\n    ]\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Download invoice (PDF)",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/shipments/:id/invoice",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "shipments",
                                ":id",
                                "invoice"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "1024"
                                }
                            ]
                        },
                        "description": "The order invoice rendered with your invoice settings."
                    }
                },
                {
                    "name": "Cancel shipment",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/shipments/:id/cancel",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "shipments",
                                ":id",
                                "cancel"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "1024"
                                }
                            ]
                        },
                        "description": "Cancels with the courier first; only if the courier accepts is the order cancelled locally and the freight refunded to your wallet.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"reason\": \"Customer changed mind\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Bulk cancel (up to 50)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/shipments/bulk-cancel",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "shipments",
                                "bulk-cancel"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"order_ids\": [\n        1024,\n        1025\n    ],\n    \"reason\": \"Out of stock\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                }
            ]
        },
        {
            "name": "NDR (Non-Delivery Reports)",
            "item": [
                {
                    "name": "List NDR shipments",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/ndr",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "ndr"
                            ],
                            "query": [
                                {
                                    "key": "action_status",
                                    "value": "pending"
                                }
                            ],
                            "variable": []
                        },
                        "description": "Shipments whose last delivery attempt failed and are waiting for your decision."
                    }
                },
                {
                    "name": "Submit NDR action",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/ndr/:id/action",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "ndr",
                                ":id",
                                "action"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "1030"
                                }
                            ]
                        },
                        "description": "Tells the courier what to do. Routed automatically to the shipment's courier (Delhivery, Shadowfax, Amazon Shipping, Nimbus Post).",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"action\": \"RE-ATTEMPT\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Bulk NDR action (up to 100)",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/ndr/bulk-action",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "ndr",
                                "bulk-action"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"order_ids\": [\n        1030,\n        1031\n    ],\n    \"action\": \"RE-ATTEMPT\"\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Refresh NDR status",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/ndr/sync",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "ndr",
                                "sync"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Re-checks your open shipments with their couriers and updates NDR flags. Delhivery shipments are refreshed in bulk; for the other couriers up to 40 shipments are refreshed per call. Normally unnecessary \u2014 courier webhooks keep this current.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"limit\": 200\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "NSL reason codes",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/ndr/nsl-codes",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "ndr",
                                "nsl-codes"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Lookup table of every NDR reason code (also listed in the Reference section)."
                    }
                }
            ]
        },
        {
            "name": "Wallet & COD",
            "item": [
                {
                    "name": "Wallet balance",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/wallet",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "wallet"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Balance and credit limit. Recharge the wallet from the panel (Wallet \u2192 Add Money). Check `available_total` before bulk jobs."
                    }
                },
                {
                    "name": "Wallet transactions",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/wallet/transactions",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "wallet",
                                "transactions"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": ""
                    }
                },
                {
                    "name": "COD summary",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/cod-remittances/summary",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "cod-remittances",
                                "summary"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": ""
                    }
                },
                {
                    "name": "List COD remittances",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/cod-remittances",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "cod-remittances"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": ""
                    }
                },
                {
                    "name": "COD remittance detail",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/cod-remittances/:id",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "cod-remittances",
                                ":id"
                            ],
                            "query": [],
                            "variable": [
                                {
                                    "key": "id",
                                    "value": "9"
                                }
                            ]
                        },
                        "description": "One remittance with the AWBs it covers and the wallet transactions that settled it."
                    }
                }
            ]
        },
        {
            "name": "Webhook configuration",
            "item": [
                {
                    "name": "View webhook config",
                    "request": {
                        "method": "GET",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/webhook",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "webhook"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": ""
                    }
                },
                {
                    "name": "Save webhook config",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/webhook",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "webhook"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Sets where events are delivered. Provide a `webhook_secret` (16\u201364 chars) or `auto_secret: true` to have one generated. The plaintext secret is returned only when it is set/created \u2014 store it.",
                        "body": {
                            "mode": "raw",
                            "raw": "{\n    \"webhook_url\": \"https://yourapp.com/hooks/shipping\",\n    \"auto_secret\": true\n}",
                            "options": {
                                "raw": {
                                    "language": "json"
                                }
                            }
                        }
                    }
                },
                {
                    "name": "Send test event",
                    "request": {
                        "method": "POST",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/webhook/test",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "webhook",
                                "test"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": "Fires a signed `webhook.test` event at your URL so you can verify signature handling."
                    }
                },
                {
                    "name": "Remove webhook",
                    "request": {
                        "method": "DELETE",
                        "header": [
                            {
                                "key": "Accept",
                                "value": "application/json"
                            },
                            {
                                "key": "Content-Type",
                                "value": "application/json"
                            }
                        ],
                        "url": {
                            "raw": "{{base_url}}/webhook",
                            "host": [
                                "{{base_url}}"
                            ],
                            "path": [
                                "webhook"
                            ],
                            "query": [],
                            "variable": []
                        },
                        "description": ""
                    }
                }
            ]
        }
    ]
}