Shiprocket API

Public REST API (v1/external) for eCommerce shipping and order management: API-user login returning a 10-day JWT, order create/update/cancel/import, courier serviceability, AWB assignment and pickup scheduling, labels, manifests and invoices, shipment tracking by AWB/shipment/order, NDR actions, returns and exchanges, hyperlocal and international orders, products, listings, channels, inventory, countries/postcodes, wallet balance, statements and billing discrepancies. Published as a public Postman collection (93 requests) with a tracking webhook.

Operations 75

POST /v1/external/auth/login Generate Token #
POST /v1/external/auth/logout Token Logout #
POST /v1/external/orders/create/adhoc Create Custom Order #
POST /v1/external/orders/create Create Channel Specific Order #
PATCH /v1/external/orders/address/pickup Change/Update Pickup Location of Created Orders #
POST /v1/external/orders/address/update Update Customer Delivery Address #
POST /v1/external/orders/update/adhoc Update Order #
POST /v1/external/orders/cancel Cancel an Order #
PATCH /v1/external/orders/fulfill Add Inventory for Ordered Product #
PATCH /v1/external/orders/mapping Map Unmapped Products #
POST /v1/external/orders/import Import Orders in Bulk #
POST /v1/external/courier/assign/awb Generate AWB for Shipment #
GET /v1/external/courier/courierListWithCounts List of Couriers #
GET /v1/external/courier/serviceability Check Courier Serviceability #
POST /v1/external/courier/generate/pickup Request for Shipment Pickup #
POST /v1/external/blocked-pincodes/upload Upload Blocked Pincodes #
GET /v1/external/block-pincodes/get Get Blocked Pincodes #
GET /v1/external/orders Get all Orders #
GET /v1/external/orders/show/{id} Get Specific Order Details #
POST /v1/external/orders/export Export your orders #
POST /v1/external/orders/create/return Create a Return Order #
POST /v1/external/orders/create/exchange Create Exchange Order #
POST /v1/external/orders/edit Update Return Order #
GET /v1/external/orders/processing/return Get All Return Orders #
GET /v1/external/shipments Get All Shipment Details #
GET /v1/external/shipments/{shipment_id} Get Details of Specific Shipment #
POST /v1/external/orders/cancel/shipment/awbs Cancel a Shipment #
POST /v1/external/manifests/generate Generate Manifest #
POST /v1/external/manifests/print Print Manifest #
POST /v1/external/courier/generate/label Generate Label #
POST /v1/external/orders/print/invoice Generate Invoice #
POST /v1/external/courier/generate/label-invoice Generate Label + Invoice (Combined) #
POST /v1/external/shipments/create/forward-shipment Forward #
POST /v1/external/shipments/create/return-shipment Return #
GET /v1/external/ndr/all Get All NDR Shipments #
GET /v1/external/ndr/{AWB} Get Specific NDR Shipment Details #
POST /v1/external/ndr/{awb}/action Action NDR #
GET /v1/external/courier/track/awb/{awb_code} Get Tracking through AWB #
POST /v1/external/courier/track/awbs Get Tracking Data for Multiple AWBS #
GET /v1/external/courier/track/shipment/{shipment_id} Get Tracking through Shipment ID #
GET /v1/external/courier/track Get Tracking Data through Order ID #
GET /v1/external/settings/company/pickup Get All Pickup Locations #
POST /v1/external/settings/company/addpickup Add a New Pickup Location #
GET /v1/external/international/orders/track Tracking #
POST /v1/external/international/settings/international_kyc International KYC #
POST /v1/external/international/settings/add-bank-details Add Bank Details #
POST /v1/external/international/orders/create/adhoc Create order #
POST /v1/external/international/orders/update/adhoc Update order #
POST /v1/external/international/shipments/create/forward-shipment International Wrapper API #
GET /v1/external/international/courier/serviceability Serviceability #
POST /v1/external/international/courier/assign/awb AWB Assignment #
POST /v1/external/international/manifests/generate Manifest Generation #
GET /v1/external/account/details/wallet-balance Get Wallet Balance #
GET /v1/external/products Get All Products #
POST /v1/external/products Add New Products #
GET /v1/external/products/show/{product_id} Get Specific Product Details #
POST /v1/external/products/qc-product-update/{productID} Convert to QC Product #
POST /v1/external/products/import Bulk Import Products #
GET /v1/external/products/sample Get Sample .csv Format #
GET /v1/external/listings Get All Listings #
POST /v1/external/listings/link Map Channel Product #
POST /v1/external/listings/import Import Catalog Mappings #
GET /v1/external/listings/export/mapped Export Mapped Products #
GET /v1/external/listings/export/unmapped Export Unmapped Products #
GET /v1/external/listings/sample Export Catalog Sample #
GET /v1/external/channels Get Integrated Channel Details #
POST /v1/external/channels Create Custom Channel #
GET /v1/external/inventory Get Inventory Details #
PUT /v1/external/inventory/{product_id}/update Update Your Inventory #
GET /v1/external/countries Get Country Codes #
GET /v1/external/countries/show/{country_id} Get All Zones #
GET /v1/external/open/postcode/details Get Locality Details #
GET /v1/external/account/details/statement Get Statement Details #
GET /v1/external/billing/discrepancy Get Dicrepancy Data #
GET /v1/external/errors/{import_id}/check Get File import Results #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/shiprocket-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

shiprocket-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Shiprocket API
  version: v1
  description: 'Shiprocket''s public REST API (v1/external) for eCommerce shipping and order management: authentication, order
    create/update/cancel/import, courier serviceability and AWB assignment, pickup scheduling, labels/manifests/invoices,
    shipment tracking, NDR actions, returns and exchanges, hyperlocal and international shipping, products, listings, channels,
    inventory, countries/postcodes, wallet balance, statements and discrepancies.


    This OpenAPI document was GENERATED by API Evangelist from Shiprocket''s own public Postman collection (the source of
    https://apidocs.shiprocket.in/). Every path, method, parameter table, request example and response example is copied from
    that collection; request/response schemas are inferred from the provider''s published parameter tables and example bodies
    and are not a provider-authored contract. Shiprocket publishes no first-party OpenAPI.'
  termsOfService: https://www.shiprocket.in/terms-conditions/
  contact:
    name: Shiprocket API integration support
    email: integration@shiprocket.com
    url: https://apidocs.shiprocket.in/
x-generated-from:
  type: postman-collection
  url: https://apidocs.shiprocket.in/api/collections/8407119/SzYW1zB2?environment=8407119-3ebd70ec-0118-4aa7-a886-4802616014f5&segregateAuth=true&versionTag=latest
  documenter: https://apidocs.shiprocket.in/
  collection_id: f5af337c-69fc-49c7-8418-e2f6ee461674
  generated: '2026-09-18'
  method: generated
  note: Faithful conversion; schemas inferred from published parameter tables and examples.
servers:
- url: https://apiv2.shiprocket.in
  description: Production
security:
- bearerAuth: []
tags:
- name: Authentication API
  description: "The authentication token is an alphanumeric code, unique to your Shiprocket account, can be used from any\
    \ system to validate your API calls to access Shiprocket's resources. Shiprocket API uses JWT tokens for validation.\n\
    \ Use this API to validate your API user and obtain the authentication token. Copy this token and use it further to validate\
    \ your API calls. The validity of this token is 10 days .\n Your API keys carry many privileges, so be sure to keep them\
    \ secure! Do not share your secret token in publicly accessible areas such as GitHub, client-side code, and so forth.\n\
    \ Steps To Use Token: \n Copy the token received in response.\n Include 'Authorization: Bearer [yourtokenvalue]' in the\
    \ appropriate field of your code.\n That's all! In case of any error, try checking your parameters."
- name: Create Or Update Order
  description: Using these APIs, you can create new orders in your Shiprocket account or update existing orders. You can also
    cancel an order, bulk import orders from a CSV file and update inventory for an ordered product.
- name: Couriers
  description: "Use these APIs to assign AWB to your order, check for courier serviceability, and request for the pickup of\
    \ your order.\n All available couriers, along with their codes, are mentioned below:"
- name: Orders
  description: "These APIs can be used to get details about your created orders, as well as manage them, which include fetching\
    \ orders from your channel, syncing their status, and exporting them to a CSV file.\n Filters:\n The 'filter' values are\
    \ mentioned below. Use these to filter your data:"
- name: Return & Exchange Orders
- name: Shipments
  description: "These APIs can be used to get shipment details. You can either get all shipment details at once or the details\
    \ of a particular shipment.\n Below are some associated status codes related to the shipments:\n Status Codes:"
- name: Labels | Manifests | Invoice
  description: These APIs are designed for the generation of manifests, invoices and labels for your shipment. You can also
    get manifest details and print a manifest using the respective API's.
- name: Wrapper API
  description: This is an all-in-one API to create an order, ship the order, add a new pickup location and generate a label
    along with the manifest for the same.
- name: NDR
  description: These APIs can be used to get details about your shipments that are in NDR, as well as manage them, which includes
    fetching NDR shipments from your account (all or specific) and taking actions such as Reattempt and RTO based on the reason.
- name: Tracking
  description: "Use these APIs to get the tracking details of your shipments through the AWB code or the Shipment ID.\n Shipment\
    \ Status Codes:"
- name: Pickup Addresses
  description: Use these APIs to get a list of all available pickup locations in your account or add a new pickup location.
- name: International
  description: These endpoints are used for operations related to international orders and shipments.
- name: Account
- name: Products
  description: Use these APIs to get information on your added products or update their details. You can also add a new product
    or import them in bulk.
- name: Listings
- name: Channels
  description: 'Use this API to get details about all the integrated channels in your Shiprocket account, including channel
    id.

    This channel id can be used to select or specify a custom channel at the time of order creation.'
- name: Inventory
  description: Use this API to update and get Inventory details.
- name: Countries
  description: The following APIs provide details about the various country codes and their respective zone details along
    with the locality details.
- name: 'Statement Details '
  description: Get your Shiprocket account's statement details using this API.
- name: Discrepancy Details
  description: Use this API to get the discrepancy details of your account.
- name: File Imports
  description: Check the status response of files that have been imported using the API.
paths:
  /v1/external/auth/login:
    post:
      summary: Generate Token
      operationId: generateToken
      tags:
      - Authentication API
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                email:
                  type: string
                password:
                  type: string
            example:
              email: ''
              password: ''
      security: []
      responses:
        '200':
          description: Success (no example response published in the collection)
  /v1/external/auth/logout:
    post:
      summary: Token Logout
      description: https://apiv2.shiprocket.in/v1/external/auth/logout
      operationId: tokenLogout
      tags:
      - Authentication API
      responses:
        '200':
          description: Success (no example response published in the collection)
  /v1/external/orders/create/adhoc:
    post:
      summary: Create Custom Order
      description: "Use this API to create a quick custom order. Quick orders are the ones where we do not store the product\
        \ details in the master catalogue.\n You have to pass all the required params at the minimum to create a quick custom\
        \ order. You can add additional parameters as per your preference.\n Note: \n In case the 'shipping_is_billing' field\
        \ is false, further shipping detail fields are required.\n If no channel id is passed, the order will be assigned\
        \ to the default custom channel. If the channel id is not known, use the 'Get All Channels' API to get the list of\
        \ all integrated channels in your Shiprocket account.\n order_id field cannot be equal to an already existing id.\
        \ Doing so does not change or affect the existing order.\n New orders cannot be created with order id's same as that\
        \ of cancelled orders. If error 422 shows up despite filling in the correct details, consider changing the order_id.\n\
        \ Be sure to input the correct calculated sub_total amount. The total is not calculated automatically through the\
        \ API.\n The 'order_id' returned in the response is the Shiprocket order_id. Please save this order ID as we will\
        \ use this in future API calls.\n Parameters:"
      operationId: createCustomOrder
      tags:
      - Create Or Update Order
      - Hyperlocal
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                order_id:
                  type: string
                  description: 'The order id you want to specify to the order. Max char: 50. (Avoid passing character values
                    as this contradicts some other API calls).'
                order_date:
                  type: string
                  description: The date of order creation in yyyy-mm-dd format. Time is additional.
                pickup_location:
                  type: string
                  description: The name of the pickup location added in your Shiprocket account. This cannot be a new location.
                comment:
                  type: string
                  description: 'Option to add ''From'' field to the shipment. To do this, enter the name in the following
                    format: ''Reseller: [name]''.'
                reseller_name:
                  type: string
                  description: To display the vendor name on the label
                company_name:
                  type: string
                  description: Name of the company.
                billing_customer_name:
                  type: string
                  description: First name of the billed customer.
                billing_last_name:
                  type: string
                  description: Last name of the billed customer.
                billing_address:
                  type: string
                  description: address details of the billed customer.
                billing_address_2:
                  type: string
                  description: Further address details of the billed customer.
                billing_isd_code:
                  type: string
                  description: ISD code of the billing address.
                billing_city:
                  type: string
                  description: 'Billing address city. Max char: 30.'
                billing_pincode:
                  type: integer
                  description: Pincode of the billing address.
                billing_state:
                  type: string
                  description: Billing address state.
                billing_country:
                  type: string
                  description: Billing address country.
                billing_email:
                  type: string
                  description: Email address of the billed customer.
                billing_phone:
                  type: integer
                  description: The phone number of the billing customer.
                billing_alternate_phone:
                  type: integer
                  description: Alternate phone number of the billing customer.
                shipping_is_billing:
                  type: boolean
                  description: Whether the shipping address is the same as billing address. 1 or 'true' for yes and 0 or 'false'
                    for no.
                shipping_customer_name:
                  type: string
                  description: Name of the customer the order is shipped to. Required in case billing is not same as shipping.
                shipping_last_name:
                  type: string
                  description: Last name of the shipping customer.
                shipping_address:
                  type: string
                  description: Address of the Shipping customer. Required in case billing is not same as shipping.
                shipping_address_2:
                  type: string
                  description: Further address details of shipping customer.
                shipping_city:
                  type: string
                  description: Shipping address city.
                shipping_pincode:
                  type: integer
                  description: Shipping address pincode.
                shipping_country:
                  type: string
                  description: Shipping address country.
                shipping_state:
                  type: string
                  description: Shipping address state.
                shipping_email:
                  type: string
                  description: Email of the shipping customer.
                shipping_phone:
                  type: integer
                  description: Phone no. of the shipping customer.
                order_items:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                      sku:
                        type: string
                      units:
                        type: string
                      selling_price:
                        type: string
                      discount:
                        type: string
                      tax:
                        type: string
                      hsn:
                        type: string
                  description: List of items and their relevant fields in the form of Array.
                payment_method:
                  type: string
                  description: The method of payment. Can be either COD (Cash on delivery) Or Prepaid.
                shipping_charges:
                  type: integer
                  description: Shipping charges if any in Rupee.
                giftwrap_charges:
                  type: integer
                  description: Giftwrap charges if any in Rupee.
                transaction_charges:
                  type: integer
                  description: Transaction charges if any in Rupee.
                total_discount:
                  type: integer
                  description: The total discount amount in Rupee.
                sub_total:
                  type: integer
                  description: Calculated sub total amount in Rupee after deductions.
                length:
                  type: number
                  description: The length of the item in cms. Must be more than 0.5.
                breadth:
                  type: number
                  description: The breadth of the item in cms. Must be more than 0.5.
                height:
                  type: number
                  description: The height of the item in cms. Must be more than 0.5.
                weight:
                  type: number
                  description: The weight of the item in kgs. Must be more than 0.
                ewaybill_no:
                  type: string
                customer_gstin:
                  type: string
                  description: Goods and Services Tax Identification Number.
                invoice_number:
                  type: string
                order_type:
                  type: string
                  description: Key to differentiate between Essentials or Non Essentials Shipments. Order type can only be
                    ESSENTIALS or NON ESSENTIALS. Please note it is case sensitive and blank values are allowed.
              required:
              - order_id
              - order_date
              - pickup_location
              - billing_customer_name
              - billing_address
              - billing_city
              - billing_pincode
              - billing_state
              - billing_country
              - billing_email
              - billing_phone
              - shipping_is_billing
              - order_items
              - payment_method
              - sub_total
              - length
              - breadth
              - height
              - weight
            example:
              order_id: ''
              order_date: ''
              pickup_location: ''
              comment: ''
              reseller_name: ''
              company_name: ''
              billing_customer_name: ''
              billing_last_name: ''
              billing_address: ''
              billing_address_2: ''
              billing_isd_code: ''
              billing_city: ''
              billing_pincode: ''
              billing_state: ''
              billing_country: ''
              billing_email: ''
              billing_phone: ''
              billing_alternate_phone: ''
              shipping_is_billing: ''
              shipping_customer_name: ''
              shipping_last_name: ''
              shipping_address: ''
              shipping_address_2: ''
              shipping_city: ''
              shipping_pincode: ''
              shipping_country: ''
              shipping_state: ''
              shipping_email: ''
              shipping_phone: ''
              order_items:
              - name: ''
                sku: ''
                units: ''
                selling_price: ''
                discount: ''
                tax: ''
                hsn: ''
              payment_method: ''
              shipping_charges: ''
              giftwrap_charges: ''
              transaction_charges: ''
              total_discount: ''
              sub_total: ''
              length: ''
              breadth: ''
              height: ''
              weight: ''
              ewaybill_no: ''
              customer_gstin: ''
              invoice_number: ''
              order_type: ''
      responses:
        '200':
          description: Successful Call
          content:
            application/json:
              examples:
                Successful-Call:
                  value:
                    order_id: 16161616
                    shipment_id: 15151515
                    status: NEW
                    status_code: 1
                    onboarding_completed_now: 0
                    awb_code: null
                    courier_company_id: null
                    courier_name: null
              schema:
                type: object
                properties:
                  order_id:
                    type: integer
                  shipment_id:
                    type: integer
                  status:
                    type: string
                  status_code:
                    type: integer
                  onboarding_completed_now:
                    type: integer
                  awb_code: {}
                  courier_company_id: {}
                  courier_name: {}
        '400':
          description: Invalid Data
          content:
            application/json:
              examples:
                Invalid-Data:
                  value:
                    message: Given channel id does not exist
                    status_code: 400
              schema:
                type: object
                properties:
                  message:
                    type: string
                  status_code:
                    type: integer
        '422':
          description: Missing Fields
          content:
            application/json:
              examples:
                Missing-Fields:
                  value:
                    message: Oops! Invalid Data.
                    errors:
                      order_id:
                      - The order id field is required.
                    status_code: 422
              schema:
                type: object
                properties:
                  message:
                    type: string
                  errors:
                    type: object
                    properties:
                      order_id:
                        type: array
                        items:
                          type: string
                  status_code:
                    type: integer
  /v1/external/orders/create:
    post:
      summary: Create Channel Specific Order
      description: "This API can be used to create a custom order, the same as the Custom order API, except that you have\
        \ to specify and select a custom channel to create the order.\n The order created will be added under the specified\
        \ channel. All the other parameters are the same.\n Note: \n Channel_id field is required.\n Order_id cannot be the\
        \ same as the already existing order id.\n Inventory Sync must be turned on to use this API. This can be done under\
        \ the 'Channels' portion on the left-hand panel of your Shiprocket account.\n Inventory details of your Shiprocket\
        \ account can be accessed using the 'Get Inventory Details' API.\n Parameters:"
      operationId: createChannelSpecificOrder
      tags:
      - Create Or Update Order
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                order_id:
                  type: string
                  description: 'The order id you want to specify to the order. Max char: 20. (Avoid passing character values
                    as this contradicts some other API calls).'
                order_date:
                  type: string
                  description: The date of order creation in yyyy-mm-dd format. Time is an additional option.
                pickup_location:
                  type: string
                  description: The name of the pickup location added in your Shiprocket account. This cannot be a new location.
                    Default Pickup location is selected in case the parameter is not filled.
                channel_id:
                  type: integer
                  description: The id of the specific channel to be selected.
                comment:
                  type: string
                  description: 'Option to add ''From'' field to the shipment. To do this, enter the name in the following
                    format: ''Reseller: [name].'''
                billing_customer_name:
                  type: string
                  description: First name of the customer who is billed.
                billing_last_name:
                  type: string
                  description: Last name of the billed customer.
                billing_address:
                  type: string
                  description: 'Primary address of the billed customer. Min char: 3.'
                billing_address_2:
                  type: string
                  description: Further address details of the billed customer.
                billing_city:
                  type: string
                  description: 'Billing address city. Max char: 30.'
                billing_pincode:
                  type: integer
                  description: Pincode of the billing address.
                billing_state:
                  type: string
                  description: Billing address state.
                billing_country:
                  type: string
                  description: Billing address country.
                billing_email:
                  type: string
                  description: Email address of the billed customer.
                billing_phone:
                  type: integer
                  description: Phone number of the billed customer.
                shipping_is_billing:
                  type: integer
                  description: Whether the shipping address is the same as billing address. 1 or 'true' for yes and 0 or 'false'
                    for no.
                shipping_customer_name:
                  type: string
                  description: Name of the customer the order is shipped to. Required in case billing is not same as shipping.
                shipping_last_name:
                  type: string
                  description: Last name of the shipping customer.
                shipping_address:
                  type: string
                  description: Address of the Shipping customer. Required in case billing is not same as shipping.
                shipping_address_2:
                  type: string
                  description: Further address details of shipping customer.
                shipping_city:
                  type: string
                  description: Shipping address city.
                shipping_pincode:
                  type: integer
                  description: Shipping address pincode.
                shipping_country:
                  type: string
                  description: Shipping address country.
                shipping_state:
                  type: string
                  description: Shipping address state.
                shipping_email:
                  type: string
                  description: Email of the shipping customer.
                shipping_phone:
                  type: integer
                  description: Phone no. of the shipping customer
                order_items:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                      sku:
                        type: string
                      units:
                        type: string
                      selling_price:
                        type: string
                      discount:
                        type: string
                      tax:
                        type: string
                      hsn:
                        type: string
                  description: Array containing further fields.
                payment_method:
                  type: string
                  description: The method of payment. Can be either COD (Cash on delivery) Or Prepaid.
                shipping_charges:
                  type: integer
                  description: Shipping charges if any in Rupee.
                giftwrap_charges:
                  type: integer
                  description: Giftwrap charges if any in Rupee.
                transaction_charges:
                  type: integer
                  description: Transaction charges if any in Rupee.
                total_discount:
                  type: integer
                  description: The total discount amount in Rupee.
                sub_total:
                  type: integer
                  description: Calculated sub total amount in Rupee.
                length:
                  type: integer
                  description: The length of the item in cms. Must be more than 0.5.
                breadth:
                  type: integer
                  description: The breadth of the item in cms. Must be more than 0.5.
                height:
                  type: integer
                  description: The height of the item in cms. Must be more than 0.5.
                weight:
                  type: integer
                  description: The weight of the item in kgs. Must be more than 0.
              required:
              - order_id
              - order_date
              - channel_id
              - billing_customer_name
              - billing_address
              - billing_city
              - billing_pincode
              - billing_state
              - billing_country
              - billing_email
              - billing_phone
              - shipping_is_billing
              - order_items
              - payment_method
              - sub_total
              - length
              - breadth
              - height
              - weight
            example:
              order_id: '3167'
              order_date: 2020-01-14 13:25
              pickup_location: mrj
              channel_id: '443555'
              comment: fast and furious
              billing_customer_name: rahul
              billing_last_name: ''
              billing_address: malviya nagar
              billing_address_2: ''
              billing_city: new delhi
              billing_pincode: '273303'
              billing_state: delhi
              billing_country: india
              billing_email: raushanra4@gmail.com
              billing_phone: '9721562372'
              shipping_is_billing: 1
              shipping_customer_name: ''
              shipping_last_name: ''
              shipping_address: ''
              shipping_address_2: ''
              shipping_city: ''
              shipping_pincode: ''
              shipping_country: ''
              shipping_state: ''
              shipping_email: ''
              shipping_phone: ''
              order_items:
              - name: shoes
                sku: shoes123
                units: '2'
                selling_price: '1500'
                discount: '100'
                tax: '50'
                hsn: ''
              payment_method: COD
              shipping_charges: ''
              giftwrap_charges: ''
              transaction_charges: ''
              total_discount: ''
              sub_total: '2950'
              length: '10'
              breadth: '10'
              height: '10'
              weight: '1.5'
      responses:
        '200':
          description: Successful Call
          content:
            application/json:
              examples:
                Successful-Call:
                  value:
                    order_id: 16161717
                    shipment_id: 16000061
                    status: NEW
                    status_code: 1
              schema:
                type: object
                properties:
                  order_id:
                    type: integer
                  shipment_id:
                    type: integer
                  status:
                    type: string
                  status_code:
                    type: integer
        '422':
          description: Invalid Data
          content:
            application/json:
              examples:
                Invalid-Data:
                  value:
                    message: Oops! Invalid Data.
                    errors:
                      channel_id:
                      - The selected channel id is invalid.
                    status_code: 422
                Missing-Fields:
                  value:
                    message: Oops! Invalid Data.
                    errors:
                      channel_id:
                      - The channel id field is required.
                    status_code: 422
              schema:
                type: object
                properties:
                  message:
                    type: string
                  errors:
                    type: object
                    properties:
                      channel_id:
                        type: array
                        items:
                          type: string
                  status_code:
                    type: integer
        '400':
          description: Inventory Sync Error
          content:
            application/json:
              examples:
                Inventory-Sync-Error:
                  value:
                    message: Inventory sync is turned off. Please add a manual order!
                    status_code: 400
              schema:
                type: object
                properties:
                  message:
                    type: string
                  status_code:
                    type: integer
  /v1/external/orders/address/pickup:
    patch:
      summary: Change/Update Pickup Location of Created Orders
      description: "Using this API, you can modify the pickup location of an already created order. Multiple order ids can\
        \ be passed to update their pickup location together.\n Note: \n Pickup location can only be changed/updated to an\
        \ already existing pickup location in your account. \n The 'order_id' to be passed is the Shiprocket order_id received\
        \ at the time of order creation.\n Multiple order ids can be passed as an array, separated by commas. eg: [\"141414,142424,143434\"\
        ]\n Parameters:"
      operationId: changeUpdatePickupLocationOfCreatedOrders
      tags:
      - Create Or Update Order
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                order_id:
                  type: array
                  items: {}
                  description: The Shiprocket order_id specified to the order.
                pickup_location:
                  type: string
                  description: The pickup location you want to change your current pickup location to.
              required:
              - order_id
              - pickup_location
            example:
          

# --- truncated at 32 KB (868 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/shiprocket/refs/heads/main/openapi/shiprocket-api-openapi.yml