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 ")