Shippo Carrier Accounts API

Manage carrier account integrations

OpenAPI Specification

shippo-carrier-accounts-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Shippo Addresses Carrier Accounts API
  description: Shippo is a multi-carrier shipping API that enables developers to add complete shipping functionality to their applications. The API supports address validation, carrier rate comparison across USPS, UPS, FedEx, DHL, and 80+ other carriers, label generation, package tracking, returns management, and webhook notifications.
  version: '2018-02-08'
  contact:
    name: Shippo
    url: https://docs.goshippo.com/
    email: support@goshippo.com
  license:
    name: Shippo API Terms
    url: https://goshippo.com/terms-of-use/
  x-date: '2026-05-02'
servers:
- url: https://api.goshippo.com
  description: Shippo API
security:
- ShippoToken: []
tags:
- name: Carrier Accounts
  description: Manage carrier account integrations
paths:
  /carrier_accounts:
    get:
      operationId: listCarrierAccounts
      summary: List Carrier Accounts
      description: Returns a list of all carrier account objects.
      tags:
      - Carrier Accounts
      parameters:
      - name: page
        in: query
        schema:
          type: integer
      - name: results
        in: query
        schema:
          type: integer
      - name: carrier
        in: query
        description: Filter by carrier name
        schema:
          type: string
      responses:
        '200':
          description: A list of carrier accounts
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CarrierAccountPaginatedList'
    post:
      operationId: createCarrierAccount
      summary: Create Carrier Account
      description: Creates a new carrier account object.
      tags:
      - Carrier Accounts
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CarrierAccountCreateRequest'
      responses:
        '201':
          description: Carrier account created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CarrierAccount'
  /carrier_accounts/{CarrierAccountId}:
    get:
      operationId: getCarrierAccount
      summary: Get Carrier Account
      description: Returns an existing carrier account using an object ID.
      tags:
      - Carrier Accounts
      parameters:
      - name: CarrierAccountId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Carrier account object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CarrierAccount'
    put:
      operationId: updateCarrierAccount
      summary: Update Carrier Account
      description: Updates an existing carrier account object.
      tags:
      - Carrier Accounts
      parameters:
      - name: CarrierAccountId
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CarrierAccountCreateRequest'
      responses:
        '200':
          description: Carrier account updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CarrierAccount'
components:
  schemas:
    CarrierAccountCreateRequest:
      type: object
      required:
      - carrier
      - account_id
      properties:
        carrier:
          type: string
        account_id:
          type: string
        parameters:
          type: object
        active:
          type: boolean
    CarrierAccount:
      type: object
      properties:
        object_id:
          type: string
        carrier:
          type: string
          description: Carrier name (e.g., usps, fedex, ups)
        account_id:
          type: string
          description: Carrier account number
        active:
          type: boolean
          description: Whether the carrier account is active
        test:
          type: boolean
          description: Whether this is a test account
        parameters:
          type: object
          description: Carrier-specific account parameters
        object_created:
          type: string
          format: date-time
        object_updated:
          type: string
          format: date-time
    CarrierAccountPaginatedList:
      type: object
      properties:
        count:
          type: integer
        next:
          type: string
        previous:
          type: string
        results:
          type: array
          items:
            $ref: '#/components/schemas/CarrierAccount'
  securitySchemes:
    ShippoToken:
      type: http
      scheme: bearer
      description: Shippo API token (prefix with "ShippoToken ")