Karrio Batches API

This is an object representing your Karrio batch operation. You can retrieve all batch operations historically for your Karrio account.

Operations 8

GET /v1/batches/data/export/{resource_type}.{export_format} Export data files #
POST /v1/batches/data/import Import data files #
GET /v1/batches/operations List all batch operations #
GET /v1/batches/operations/{id} Retrieve a batch operation #
POST /v1/batches/orders Create order batch #
POST /v1/batches/shipments Create shipment batch #
POST /v1/batches/trackers Create tracker batch #
POST /v1/batches/webhooks Resend webhooks #

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/karrio-batches-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

karrio-batches-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: "\nKarrio is a multi-carrier shipping API that simplifies the integration of logistics carrier services.\n\nThe Karrio API is organized around REST. Our API has predictable resource-oriented URLs, accepts JSON-encoded\nrequest bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.\n\nThe Karrio API differs for every account as we release new versions.\nThese docs are customized to your version of the API.\n\n\n## Versioning\n\nWhen backwards-incompatible changes are made to the API, a new, dated version is released.\nThe current version is `2026.1.32`.\n\nRead our API changelog to learn more about backwards compatibility.\n\nAs a precaution, use API versioning to check a new API version before committing to an upgrade.\n\n\n## Environments\n\nThe Karrio API offer the possibility to create and retrieve certain objects in `test_mode`.\nIn development, it is therefore possible to add carrier connections, get live rates,\nbuy labels, create trackers and schedule pickups in `test_mode`.\n\n\n## Pagination\n\nAll top-level API resources have support for bulk fetches via \"list\" API methods. For instance, you can list addresses,\nlist shipments, and list trackers. These list API methods share a common structure, taking at least these\ntwo parameters: limit, and offset.\n\nKarrio utilizes offset-based pagination via the offset and limit parameters.\nBoth parameters take a number as value (see below) and return objects in reverse chronological order.\nThe offset parameter returns objects listed after an index.\nThe limit parameter take a limit on the number of objects to be returned from 1 to 100.\n\n\n```json\n{\n    \"count\": 100,\n    \"next\": \"/v1/shipments?limit=25&offset=50\",\n    \"previous\": \"/v1/shipments?limit=25&offset=25\",\n    \"results\": [\n        { ... },\n    ]\n}\n```\n\n## Metadata\n\nUpdateable Karrio objects—including Shipment and Order have a metadata parameter.\nYou can use this parameter to attach key-value data to these Karrio objects.\n\nMetadata is useful for storing additional, structured information on an object.\nAs an example, you could store your user's full name and corresponding unique identifier\nfrom your system on a Karrio Order object.\n\nDo not store any sensitive information as metadata.\n\n## Authentication\n\nAPI keys are used to authenticate requests. You can view and manage your API keys in the Dashboard.\n\nYour API keys carry many privileges, so be sure to keep them secure! Do not share your secret\nAPI keys in publicly accessible areas such as GitHub, client-side code, and so forth.\n\nAuthentication to the API is performed via HTTP Basic Auth. Provide your API token as\nthe basic auth username value. You do not need to provide a password.\n\n```shell\n$ curl https://instance.api.com/v1/shipments \\\n    -u key_xxxxxx:\n# The colon prevents curl from asking for a password.\n```\n\nIf you need to authenticate via bearer auth (e.g., for a cross-origin request),\nuse `-H \"Authorization: Token key_xxxxxx\"` instead of `-u key_xxxxxx`.\n\nAll API requests must be made over [HTTPS](http://en.wikipedia.org/wiki/HTTP_Secure).\nAPI requests without authentication will also fail.\n"
  title: Karrio Batches API
  version: 2026.1.32
tags:
- name: Batches
  description: "This is an object representing your Karrio batch operation.\n                You can retrieve all batch operations historically for your Karrio account.\n                "
paths:
  /v1/batches/data/export/{resource_type}.{export_format}:
    get:
      operationId: '&&&&$export_file'
      summary: Export data files
      parameters:
      - in: query
        name: data_template
        schema:
          type: string
        description: "A data template slug to use for the import.<br/>\n        **When nothing is specified, the system default headers are expected.**\n        "
      - in: path
        name: export_format
        schema:
          type: string
          enum:
          - billing
          - order
          - rate_sheet
          - shipment
          - trackers
        required: true
      - in: path
        name: resource_type
        schema:
          type: string
          enum:
          - billing
          - order
          - rate_sheet
          - shipment
          - trackers
        required: true
      tags:
      - Batches
      security:
      - TokenBasic: []
      - Token: []
      - OAuth2: []
      - JWT: []
      responses:
        '200':
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
          description: ''
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
  /v1/batches/data/import:
    post:
      operationId: '&&&&$import_file'
      description: 'Import csv, xls and xlsx data files for: `Beta`<br/>

        - trackers data

        - orders data

        - shipments data

        - rate_sheet data (Excel/CSV)<br/><br/>

        **For rate_sheet imports, pass dry_run=true to validate and preview a diff

        without writing. For other resource types, a BatchOperation is returned.**'
      summary: Import data files
      parameters:
      - in: query
        name: data_file
        schema:
          type: string
          format: binary
      - in: query
        name: data_template
        schema:
          type: string
        description: "A data template slug to use for the import.<br/>\n        **When nothing is specified, the system default headers are expected.**\n        "
      - in: query
        name: resource_type
        schema:
          type: string
          enum:
          - billing
          - order
          - rate_sheet
          - shipment
          - trackers
        description: The type of the resource to import
      tags:
      - Batches
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                resource_type:
                  type: string
                data_template:
                  type: string
                dry_run:
                  type: boolean
                data_file:
                  type: string
                  format: binary
      security:
      - TokenBasic: []
      - Token: []
      - OAuth2: []
      - JWT: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
                additionalProperties: {}
          description: ''
        '202':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperation'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
  /v1/batches/operations:
    get:
      operationId: '&&&&$list'
      description: Retrieve all batch operations. `Beta`
      summary: List all batch operations
      tags:
      - Batches
      security:
      - TokenBasic: []
      - Token: []
      - OAuth2: []
      - JWT: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperations'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
      x-operationId: listBatchOperations
  /v1/batches/operations/{id}:
    get:
      operationId: '&&&&$retrieve'
      description: Retrieve a batch operation. `Beta`
      summary: Retrieve a batch operation
      parameters:
      - in: path
        name: id
        schema:
          type: string
        required: true
      tags:
      - Batches
      security:
      - TokenBasic: []
      - Token: []
      - OAuth2: []
      - JWT: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperation'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
      x-operationId: retrieveBatchOperation
  /v1/batches/orders:
    post:
      operationId: '&&&&$create_orders'
      description: Create order batch. `Beta`
      summary: Create order batch
      tags:
      - Batches
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchOrderData'
        required: true
      security:
      - TokenBasic: []
      - Token: []
      - OAuth2: []
      - JWT: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperation'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
  /v1/batches/shipments:
    post:
      operationId: '&&&&$create_shipments'
      description: Create shipment batch. `Beta`
      summary: Create shipment batch
      tags:
      - Batches
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchShipmentData'
        required: true
      security:
      - TokenBasic: []
      - Token: []
      - OAuth2: []
      - JWT: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperation'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
  /v1/batches/trackers:
    post:
      operationId: '&&&&$create_trackers'
      description: Create tracker batch. `Beta`
      summary: Create tracker batch
      tags:
      - Batches
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchTrackerData'
        required: true
      security:
      - TokenBasic: []
      - Token: []
      - OAuth2: []
      - JWT: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchOperation'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
  /v1/batches/webhooks:
    post:
      operationId: $$$$$$$$resend_webhooks
      description: Resend webhook notifications for a batch of entities.
      summary: Resend webhooks
      tags:
      - Batches
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BatchWebhookResendRequest'
        required: true
      security:
      - TokenBasic: []
      - Token: []
      - OAuth2: []
      - JWT: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BatchWebhookResendResponse'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
      x-operationId: resendWebhooks
components:
  schemas:
    OrderData:
      type: object
      properties:
        order_id:
          type: string
          description: The source' order id.
        order_date:
          type:
          - string
          - 'null'
          description: 'The order date. format: `YYYY-MM-DD`'
        source:
          type: string
          default: API
          description: "The order's source.<br/>\n        e.g. API, POS, ERP, Shopify, Woocommerce, etc.\n        "
        shipping_to:
          allOf:
          - $ref: '#/components/schemas/AddressData'
          description: The customer or recipient address for the order.
        shipping_from:
          allOf:
          - $ref: '#/components/schemas/AddressData'
          description: The origin or warehouse address of the order items.
        billing_address:
          allOf:
          - $ref: '#/components/schemas/AddressData'
          description: The customer' or shipping billing address.
        line_items:
          type: array
          items:
            $ref: '#/components/schemas/CommodityData'
          description: The order line items.
        options:
          type:
          - object
          - 'null'
          additionalProperties: {}
          description: "<details>\n        <summary>The options available for the order shipments.</summary>\n\n        {\n            \"currency\": \"USD\",\n            \"paid_by\": \"third_party\",\n            \"payment_account_number\": \"123456789\",\n            \"duty_paid_by\": \"third_party\",\n            \"duty_account_number\": \"123456789\",\n            \"invoice_number\": \"123456789\",\n            \"invoice_date\": \"2020-01-01\",\n            \"single_item_per_parcel\": true,\n            \"carrier_ids\": [\"canadapost-test\"],\n            \"preferred_service\": \"fedex_express_saver\",\n        }\n        </details>\n        "
        metadata:
          type: object
          additionalProperties: {}
          default: {}
          description: User metadata for the order.
      required:
      - line_items
      - order_id
      - shipping_to
    BatchTrackerData:
      type: object
      properties:
        trackers:
          type: array
          items:
            $ref: '#/components/schemas/TrackingData'
          description: The list of tracking info to process.
      required:
      - trackers
    BatchOrderData:
      type: object
      properties:
        orders:
          type: array
          items:
            $ref: '#/components/schemas/OrderData'
          description: The list of orders to process.
      required:
      - orders
    TrackingData:
      type: object
      properties:
        tracking_number:
          type: string
          description: The package tracking number
        carrier_name:
          enum:
          - aramex
          - asendia
          - asendia_us
          - australiapost
          - boxknight
          - bpost
          - canadapost
          - canpar
          - chronopost
          - colissimo
          - dhl_express
          - dhl_parcel_de
          - dhl_poland
          - dhl_universal
          - dicom
          - dpd
          - dpd_meta
          - dtdc
          - fedex
          - generic
          - geodis
          - gls
          - hay_post
          - hermes
          - landmark
          - laposte
          - locate2u
          - mydhl
          - nationex
          - postat
          - purolator
          - roadie
          - royalmail
          - seko
          - sendle
          - smartkargo
          - spring
          - teleship
          - tge
          - tnt
          - ups
          - usps
          - usps_international
          - veho
          - zoom2u
          type: string
          x-spec-enum-id: b6c8e3114206d815
          description: The tracking carrier
        account_number:
          type:
          - string
          - 'null'
          description: The shipper account number
        reference:
          type:
          - string
          - 'null'
          description: The shipment reference
        info:
          allOf:
          - $ref: '#/components/schemas/TrackingInfo'
          description: The package and shipment tracking details
        metadata:
          type: object
          additionalProperties: {}
          default: {}
          description: The carrier user metadata.
      required:
      - carrier_name
      - tracking_number
    TrackingInfo:
      type: object
      properties:
        carrier_tracking_link:
          type:
          - string
          - 'null'
          description: The carrier tracking link
        customer_name:
          type:
          - string
          - 'null'
          description: The customer name
        expected_delivery:
          type:
          - string
          - 'null'
          description: The expected delivery date
        note:
          type:
          - string
          - 'null'
          description: A tracking note
        order_date:
          type:
          - string
          - 'null'
          description: The package order date
        order_id:
          type:
          - string
          - 'null'
          description: The package order id or number
        package_weight:
          type:
          - string
          - 'null'
          description: The package weight
        package_weight_unit:
          type:
          - string
          - 'null'
          description: The package weight unit
        shipment_package_count:
          type:
          - string
          - 'null'
          description: The package count
        shipment_pickup_date:
          type:
          - string
          - 'null'
          description: The shipment pickup date
        shipment_delivery_date:
          type:
          - string
          - 'null'
          description: The shipment delivery date
        shipment_service:
          type:
          - string
          - 'null'
          description: The shipment service
        shipment_origin_country:
          type:
          - string
          - 'null'
          description: The shipment origin country
        shipment_origin_postal_code:
          type:
          - string
          - 'null'
          description: The shipment origin postal code
        shipment_destination_country:
          type:
          - string
          - 'null'
          description: The shipment destination country
        shipment_destination_postal_code:
          type:
          - string
          - 'null'
          description: The shipment destination postal code
        shipping_date:
          type:
          - string
          - 'null'
          description: The shipping date
        signed_by:
          type:
          - string
          - 'null'
          description: The person who signed for the package
        source:
          type:
          - string
          - 'null'
          description: The tracker source
    CustomsData:
      type: object
      properties:
        commodities:
          type: array
          items:
            $ref: '#/components/schemas/CommodityData'
          description: The parcel content items
        duty:
          allOf:
          - $ref: '#/components/schemas/Duty'
          description: "The payment details.<br/>\n        **Note that this is required for a Dutiable parcel shipped internationally.**\n        "
        duty_billing_address:
          allOf:
          - $ref: '#/components/schemas/AddressData'
          description: The duty payor address.
        content_type:
          enum:
          - documents
          - gift
          - sample
          - merchandise
          - return_merchandise
          - other
          - ''
          - null
          type:
          - string
          - 'null'
          x-spec-enum-id: b8935f22b570da75
        content_description:
          type:
          - string
          - 'null'
        incoterm:
          enum:
          - CFR
          - CIF
          - CIP
          - CPT
          - DAP
          - DAF
          - DDP
          - DDU
          - DEQ
          - DES
          - EXW
          - FAS
          - FCA
          - FOB
          - null
          type:
          - string
          - 'null'
          x-spec-enum-id: 61b2121fbcca17a7
          description: The customs 'term of trade' also known as 'incoterm'
        invoice:
          type:
          - string
          - 'null'
          description: The invoice reference number
          maxLength: 50
        invoice_date:
          type:
          - string
          - 'null'
          description: "The invoice date.<br/>\n        Date Format: `YYYY-MM-DD`\n        "
        commercial_invoice:
          type:
          - boolean
          - 'null'
          description: Indicates if the shipment is commercial
        certify:
          type:
          - boolean
          - 'null'
          description: Indicate that signer certified confirmed all
        signer:
          type:
          - string
          - 'null'
          maxLength: 50
        options:
          type: object
          additionalProperties: {}
          default: {}
          description: "<details>\n        <summary>Customs identification options.</summary>\n\n        {\n            \"aes\": \"5218487281\",\n            \"eel_pfc\": \"5218487281\",\n            \"license_number\": \"5218487281\",\n            \"certificate_number\": \"5218487281\",\n            \"nip_number\": \"5218487281\",\n            \"eori_number\": \"5218487281\",\n            \"vat_registration_number\": \"5218487281\",\n        }\n        </details>\n        "
      required:
      - commodities
    CommodityData:
      type: object
      properties:
        weight:
          type: number
          format: double
          description: The commodity's weight
        weight_unit:
          enum:
          - KG
          - LB
          - OZ
          - G
          type: string
          x-spec-enum-id: 3a766910e8401666
          description: The commodity's weight unit
        title:
          type:
          - string
          - 'null'
          description: A description of the commodity
          maxLength: 200
        description:
          type:
          - string
          - 'null'
          description: A description of the commodity
          maxLength: 200
        quantity:
          type: integer
          default: 1
          description: The commodity's quantity (number or item)
        sku:
          type:
          - string
          - 'null'
          description: The commodity's sku number
          maxLength: 100
        hs_code:
          type:
          - string
          - 'null'
          description: The commodity's hs_code number
          maxLength: 100
        value_amount:
          type:
          - number
          - 'null'
          format: double
          description: The monetary value of the commodity
        value_currency:
          enum:
          - EUR
          - AED
          - USD
          - XCD
          - AMD
          - ANG
          - AOA
          - ARS
          - AUD
          - AWG
          - AZN
          - BAM
          - BBD
          - BDT
          - XOF
          - BGN
          - BHD
          - BIF
          - BMD
          - BND
          - BOB
          - BRL
          - BSD
          - BTN
          - BWP
          - BYN
          - BZD
          - CAD
          - CDF
          - XAF
          - CHF
          - NZD
          - CLP
          - CNY
          - COP
          - CRC
          - CUC
          - CVE
          - CZK
          - DJF
          - DKK
          - DOP
          - DZD
          - EGP
          - ERN
          - ETB
          - FJD
          - GBP
          - GEL
          - GHS
          - GMD
          - GNF
          - GTQ
          - GYD
          - HKD
          - HNL
          - HRK
          - HTG
          - HUF
          - IDR
          - ILS
          - INR
          - IRR
          - ISK
          - JMD
          - JOD
          - JPY
          - KES
          - KGS
          - KHR
          - KMF
          - KPW
          - KRW
          - KWD
          - KYD
          - KZT
          - LAK
          - LKR
          - LRD
          - LSL
          - LYD
          - MAD
          - MDL
          - MGA
          - MKD
          - MMK
          - MNT
          - MOP
          - MRO
          - MUR
          - MVR
          - MWK
          - MXN
          - MYR
          - MZN
          - NAD
          - XPF
          - NGN
          - NIO
          - NOK
          - NPR
          - OMR
          - PEN
          - PGK
          - PHP
          - PKR
          - PLN
          - PYG
          - QAR
          - RON
          - RSD
          - RUB
          - RWF
          - SAR
          - SBD
          - SCR
          - SDG
          - SEK
          - SGD
          - SHP
          - SLL
          - SOS
          - SRD
          - SSP
          - STD
          - SYP
          - SZL
          - THB
          - TJS
          - TND
          - TOP
          - TRY
          - TTD
          - TWD
          - TZS
          - UAH
          - UYU
          - UZS
          - VEF
          - VND
          - VUV
          - WST
          - YER
          - ZAR
          - null
          type:
          - string
          - 'null'
          x-spec-enum-id: fd73376ae25ab80b
          description: The currency of the commodity value amount
        origin_country:
          enum:
          - AC
          - AD
          - AE
          - AF
          - AG
          - AI
          - AL
          - AM
          - AN
          - AO
          - AR
          - AS
          - AT
          - AU
          - AW
          - AZ
          - BA
          - BB
          - BD
          - BE
          - BF
          - BG
          - BH
          - BI
          - BJ
          - BM
          - BN
          - BO
          - BR
          - BS
          - BT
          - BW
          - BY
          - BZ
          - CA
          - CD
          - CF
          - CG
          - CH
          - CI
          - CK
          - CL
          - CM
          - CN
          - CO
          - CR
          - CU
          - CV
          - CY
          - CZ
          - DE
          - DJ
          - DK
          - DM
          - DO
          - DZ
          - EC
          - EE
          - EG
          - ER
          - ES
          - ET
          - FI
          - FJ
          - FK
          - FM
          - FO
          - FR
          - GA
          - GB
          - GD
          - GE
          - GF
          - GG
          - GH
          - GI
          - GL
          - GM
          - GN
          - GP
          - GQ
          - GR
          - GT
          - GU
          - GW
          - GY
          - HK
          - HN
          - HR
          - HT
          - HU
          - IC
          - ID
          - IE
          - IL
          - IN
          - IQ
          - IR
          - IS
          - IT
          - JE
          - JM
          - JO
          - JP
          - KE
          - KG
          - KH
          - KI
          - KM
          - KN
          - KP
          - KR
          - KV
          - KW
          - KY
          - KZ
          - LA
          - LB
          - LC
          - LI
          - LK
          - LR
          - LS
          - LT
          - LU
          - LV
          - LY
          - MA
          - MC
          - MD
          - ME
          - MG
          - MH
          - MK
          - ML
          - MM
          - MN
          - MO
          - MP
          - MQ
          - MR
          - MS
          - MT
          - MU
          - MV
          - MW
          - MX
          - MY
          - MZ
          - NA
          - NC
          - NE
          - NG
          - NI
          - NL
          - 'NO'
          - NP
          - NR
          - NU
          - NZ
          - OM
          - PA
          - PE
          - PF
          - PG
          - PH
          - PK
          - PL
          - PR
          - PT
          - PW
          - PY
          - QA
          - RE
          - RO
          - RS
          - RU
          - RW
          - SA
          - SB
          - SC
          - SD
          - SE
          - SG
          - SH
          - SI
          - SK
          - SL
          - SM
          - SN
          - SO
          - SR
          - SS
          - ST
          - SV
          - SY
          - SZ
          - TC
          - TD
          - TG
          - TH
          - TJ
          - TL
          - TN
          - TO
          - TR
          - TT
          - TV
          - TW
          - TZ
          - UA
          - UG
          - US
          - UY
          - UZ
          - VA
          - VC
          - VE
          - VG
          - VI
          - VN
          - VU
          - WS
          - XB
          - XC
          - XE
          - XM
          - XN
          - XS
          - XY
          - YE
          - YT
          - ZA
          - ZM
          - ZW
          - EH
          - IM
          - BL
          - MF
          - SX
          - null
          type:
          - string
          - 'null'
          x-spec-enum-id: b4b44aee15c8daa0
          description: The origin or manufacture country
        product_url:
          type:
          - string
          - 'null'
          description: The product url
        image_url:
          type:
          - string
          - 'null'
          description: The image url
        product_id:
          type:
          - string
          - 'null'
          description: The product id
        variant_id:
          type:
          - string
          - 'null'
          description: The variant id
        parent_id:
          type:
          - string
          - 'null'
          description: The id of the related order line item.
        metadata:
          type:
          - object
          - 'null'
          additionalProperties: {}
          description: "<details>\n        <summary>Commodity user references metadata.</summary>\n\n        {\n            \"part_number\": \"5218487281\",\n            \"reference1\": \"# ref 1\",\n            \"reference2\": \"# ref 2\",\n            \"reference3\": \"# ref 3\",\n            ...\n        }\n        </details>\n        "
        meta:
          type:
          - object
          - 'null'
          additionalProperties: {}
          description: "Template metadata for template identification.\n        Structure: {\"label\": \"Widget Pro\", \"is_default\": false}\n        "
      required:
      - weight
      - weight_unit
    BatchWebhookResendRequest:
      type: object
      properties:
        entity_ids:
          type: array
          items:
            type: string
        object_type:
          enum:
          - tracker
          - shipment
          type: string
          x-spec-enum-id: d88710a9180d4ffa
          default: tracker
        webhook_id:
          type: string
      required:
      - entity_ids
    BatchObject:
      type: object
      properties:
        id:
          type: string
          description: A unique identifier
        status:
          enum:
          - queued
          - running
          - failed
          - completed
          - completed_with_errors
          type: string
          x-spec-enum-id: b04b4aeb7eb45cf2
          description: The batch operation resource status
        errors:
          type:
          - object
          - 'null'
          additionalProperties: {}
          descripti

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