Karrio Manifests API

This is an object representing your Karrio manifest details. Some carriers require manifests to be created after labels are generated. A manifest is a summary of all the shipments that are being sent out.

Business capability
Manifest and Cargo Declaration Management BC-2500.40

Operations 4

GET /v1/manifests List manifests #
POST /v1/manifests Create a manifest #
GET /v1/manifests/{id} Retrieve a manifest #
POST /v1/manifests/{id}/document Retrieve a manifest document #

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-manifests-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-manifests-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: Karrio is a multi-carrier shipping API that simplifies the integration of logistics carrier services.
  title: Karrio Manifests API
  version: 2026.1.32
tags:
- name: Manifests
  description: 'This is an object representing your Karrio manifest details.

    Some carriers require manifests to be created after labels are generated.

    A manifest is a summary of all the shipments that are being sent out.'
paths:
  /v1/manifests:
    get:
      operationId: $$$$&&list
      description: Retrieve all manifests.
      summary: List manifests
      parameters:
      - in: query
        name: carrier_name
        schema:
          type: string
        description: 'The unique carrier slug. <br/>Values: `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`, `easypost`, `easyship`, `eshipper`, `fedex`, `freightcom`, `generic`, `geodis`, `gls`, `hay_post`, `hermes`, `landmark`, `laposte`, `locate2u`, `mydhl`, `nationex`, `parcelone`, `postat`, `purolator`, `roadie`, `royalmail`, `sapient`, `seko`, `sendle`, `shipengine`, `smartkargo`, `spring`, `teleship`, `tge`, `tnt`, `ups`, `usps`, `usps_international`, `veho`, `zoom2u`'
      - in: query
        name: created_after
        schema:
          type: string
          format: date-time
      - in: query
        name: created_before
        schema:
          type: string
          format: date-time
      tags:
      - Manifests
      security:
      - TokenBasic: []
      - Token: []
      - OAuth2: []
      - JWT: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManifestList'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
      x-operationId: listManifests
    post:
      operationId: $$$$&&create
      description: Create a manifest for one or many shipments with labels already purchased.
      summary: Create a manifest
      tags:
      - Manifests
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ManifestData'
        required: true
      security:
      - TokenBasic: []
      - Token: []
      - OAuth2: []
      - JWT: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Manifest'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '424':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessages'
          description: ''
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
      x-operationId: createManifest
  /v1/manifests/{id}:
    get:
      operationId: $$$$&&retrieve
      description: Retrieve a shipping manifest.
      summary: Retrieve a manifest
      parameters:
      - in: path
        name: id
        schema:
          type: string
        required: true
      tags:
      - Manifests
      security:
      - TokenBasic: []
      - Token: []
      - OAuth2: []
      - JWT: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Manifest'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
      x-operationId: retrieveManifest
  /v1/manifests/{id}/document:
    post:
      operationId: $$$$&&document
      description: Retrieve a manifest document as base64 encoded content.
      summary: Retrieve a manifest document
      parameters:
      - in: path
        name: id
        schema:
          type: string
        required: true
      tags:
      - Manifests
      security:
      - TokenBasic: []
      - Token: []
      - OAuth2: []
      - JWT: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShippingDocument'
          description: ''
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: ''
      x-operationId: retrieveManifestDocument
components:
  schemas:
    Manifest:
      type: object
      properties:
        id:
          type: string
          description: A unique manifest identifier
        object_type:
          type: string
          default: manifest
          description: Specifies the object type
        carrier_name:
          type: string
          description: The manifest carrier
        carrier_id:
          type: string
          description: The manifest carrier configured name
        meta:
          type:
          - object
          - 'null'
          additionalProperties: {}
          description: provider specific metadata
        test_mode:
          type: boolean
          description: Specified whether it was created with a carrier in test mode
        address:
          allOf:
          - $ref: '#/components/schemas/AddressData'
          description: The address of the warehouse or location where the shipments originate.
        options:
          type: object
          additionalProperties: {}
          default: {}
          description: "<details>\n        <summary>The options available for the manifest.</summary>\n\n        {\n            \"shipments\": [\n                {\n                    \"tracking_number\": \"123456789\",\n                    ...\n                    \"meta\": {...}\n                }\n            ]\n        }\n        </details>\n        "
        reference:
          type:
          - string
          - 'null'
          description: The manifest reference
        shipment_identifiers:
          type: array
          items:
            type: string
          description: "The list of shipment identifiers you want to add to your manifest.<br/>\n        shipment_identifier is often a tracking_number or shipment_id returned when you purchase a label.\n        "
        metadata:
          type: object
          additionalProperties: {}
          default: {}
          description: User metadata for the pickup
        manifest_url:
          type:
          - string
          - 'null'
          format: uri
          description: The Manifest file URL
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
          default: []
          description: The list of note or warning messages
      required:
      - address
      - carrier_id
      - carrier_name
      - shipment_identifiers
      - test_mode
    ShippingDocument:
      type: object
      description: Serializer for shipping document download response.
      properties:
        category:
          type: string
          description: The document category (e.g., 'label', 'invoice', 'manifest')
        format:
          type: string
          description: The document format (e.g., 'PDF', 'ZPL')
        print_format:
          type:
          - string
          - 'null'
          description: The document print format (e.g., 'A4', '6x4', '8.5x11')
        url:
          type:
          - string
          - 'null'
          description: The document URL
        base64:
          type:
          - string
          - 'null'
          description: The document content encoded in base64
      required:
      - category
      - format
    Message:
      type: object
      properties:
        message:
          type: string
          description: The error or warning message
        code:
          type: string
          description: The message code
        level:
          type: string
          description: The message level
        details:
          type: object
          additionalProperties: {}
          description: any additional details
        carrier_name:
          type: string
          description: The targeted carrier
        carrier_id:
          type: string
          description: The targeted carrier name (unique identifier)
    ErrorResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/APIError'
          description: The list of API errors
    ManifestList:
      type: object
      properties:
        count:
          type:
          - integer
          - 'null'
        next:
          type:
          - string
          - 'null'
          format: uri
        previous:
          type:
          - string
          - 'null'
          format: uri
        results:
          type: array
          items:
            $ref: '#/components/schemas/Manifest'
      required:
      - results
    ErrorMessages:
      type: object
      properties:
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Message'
          description: The list of error messages
    APIError:
      type: object
      properties:
        message:
          type: string
          description: The error or warning message
        code:
          type: string
          description: The message code
        level:
          type: string
          description: The message level
        details:
          type: object
          additionalProperties: {}
          description: any additional details
    ManifestData:
      type: object
      properties:
        carrier_name:
          type: string
          description: The manifest's carrier
        address:
          allOf:
          - $ref: '#/components/schemas/AddressData'
          description: The address of the warehouse or location where the shipments originate.
        options:
          type: object
          additionalProperties: {}
          default: {}
          description: "<details>\n        <summary>The options available for the manifest.</summary>\n\n        {\n            \"shipments\": [\n                {\n                    \"tracking_number\": \"123456789\",\n                    ...\n                    \"meta\": {...}\n                }\n            ]\n        }\n        </details>\n        "
        reference:
          type:
          - string
          - 'null'
          description: The manifest reference
        shipment_ids:
          type: array
          items:
            type: string
          description: The list of existing shipment object ids with label purchased.
      required:
      - address
      - carrier_name
      - shipment_ids
    AddressData:
      type: object
      properties:
        id:
          type:
          - string
          - 'null'
          description: A unique identifier for the address (used in JSON embedded data)
        postal_code:
          type:
          - string
          - 'null'
          description: "The address postal code\n        **(required for shipment purchase)**\n        "
          maxLength: 20
        city:
          type:
          - string
          - 'null'
          description: "The address city.\n        **(required for shipment purchase)**\n        "
          maxLength: 50
        federal_tax_id:
          type:
          - string
          - 'null'
          description: The party frederal tax id
          maxLength: 50
        state_tax_id:
          type:
          - string
          - 'null'
          description: The party state id
          maxLength: 50
        person_name:
          type:
          - string
          - 'null'
          description: "Attention to\n        **(required for shipment purchase)**\n        "
          maxLength: 100
        company_name:
          type:
          - string
          - 'null'
          description: The company name if the party is a company
          maxLength: 100
        country_code:
          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
          type: string
          x-spec-enum-id: b4b44aee15c8daa0
          description: The address country code
        email:
          type:
          - string
          - 'null'
          description: The party email
        phone_number:
          type:
          - string
          - 'null'
          description: The party phone number.
          maxLength: 50
        state_code:
          type:
          - string
          - 'null'
          description: The address state code
          maxLength: 50
        residential:
          type:
          - boolean
          - 'null'
          default: false
          description: Indicate if the address is residential or commercial (enterprise)
        street_number:
          type:
          - string
          - 'null'
          description: The address street number
          maxLength: 100
        address_line1:
          type:
          - string
          - 'null'
          description: "The address line with street number <br/>\n        **(required for shipment purchase)**\n        "
          maxLength: 100
        address_line2:
          type:
          - string
          - 'null'
          description: The address line with suite number
          maxLength: 100
        validate_location:
          type:
          - boolean
          - 'null'
          default: false
          description: Indicate if the address should be validated
        meta:
          type:
          - object
          - 'null'
          additionalProperties: {}
          description: "Template metadata for template identification.\n        Structure: {\"label\": \"Warehouse A\", \"is_default\": true, \"usage\": [\"sender\", \"return\"]}\n        "
      required:
      - country_code
  securitySchemes:
    JWT:
      in: header
      type: apiKey
      scheme: bearer
      bearerFormat: JWT
      name: Authorization
      description: 'Authorization: Bearer xxx.xxx.xxx'
    OAuth2:
      type: oauth2
      in: header
      name: Authorization
      flows:
        authorizationCode:
          authorizationUrl: /oauth/authorize/
          tokenUrl: /oauth/token/
          scopes:
            read: Read access to Karrio data
            write: Write access to Karrio data
            openid: OpenID connect
      description: 'Authorization: Bearer xxxxxxxx'
    Token:
      type: apiKey
      in: header
      name: Authorization
      description: 'Authorization: Token key_xxxxxxxx'
    TokenBasic:
      type: http
      scheme: basic
      name: Authorization
      description: '-u key_xxxxxxxx:'