ShipEngine Downloads API

downloads

GitHub OpenAPI

Operations 1

GET /v1/downloads/{dir}/{subdir}/{filename} Download file #

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/shipengine:shipengine-downloads-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

shipengine-downloads-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Shipengine Downloads API
  version: 1.1.202604070904
  contact:
    name: ShipEngine Sales & Support
    email: sales@shipengine.com
    url: https://www.shipengine.com/contact/
    x-phone: 1-512-856-5379
  license:
    name: Proprietary
    url: https://www.shipengine.com/terms-of-service/
  termsOfService: https://www.shipengine.com/terms-of-service/
  x-logo:
    url: https://shipengine.github.io/img/shipengine-logo-square.png
    backgroundColor: '#FFFFFF'
    altText: ShipEngine logo
  description: 'Operations tagged downloads across 2 of this provider''s published API definitions: shipengine-openapi-docs-bundle.yaml, shipengine-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.shipengine.com
security:
- api_key: []
tags:
- name: Downloads
  description: downloads
  x-displayName: Downloads
paths:
  /v1/downloads/{dir}/{subdir}/{filename}:
    summary: File download
    description: 'This endpoint is used to download forms that are generated in the various pdf, png, zpl formats

      such as labels and batches

      '
    parameters:
    - name: subdir
      in: path
      required: true
      schema:
        type: string
    - name: filename
      in: path
      required: true
      schema:
        type: string
    - name: dir
      in: path
      required: true
      schema:
        type: string
    get:
      summary: Download file
      description: Get File
      operationId: download_file
      tags:
      - Downloads
      parameters:
      - name: download
        in: query
        required: false
        schema:
          type: string
      - name: rotation
        in: query
        required: false
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: The request was a success
          content:
            application/pdf:
              schema:
                $ref: '#/components/schemas/download_file_pdf_response_body'
            image/png:
              schema:
                $ref: '#/components/schemas/download_file_png_response_body'
            application/zpl:
              schema:
                $ref: '#/components/schemas/download_file_zpl_response_body'
        '400':
          $ref: '#/components/responses/400_error_response'
        '404':
          $ref: '#/components/responses/404_error_response'
        '500':
          $ref: '#/components/responses/500_error_response'
    servers:
    - url: https://api.shipengine.com
components:
  responses:
    400_error_response:
      description: The request contained errors.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error_response_body'
    404_error_response:
      description: The specified resource does not exist.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error_response_body'
    500_error_response:
      description: 'An error occurred on ShipStation API''s side.


        > This error will automatically be reported to our engineers.

        '
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error_response_body'
  schemas:
    download_file_zpl_response_body:
      title: download_file_zpl_response_body
      type: string
      format: binary
    error_response_body:
      title: error_response_body
      type: object
      description: An error response body
      required:
      - request_id
      - errors
      additionalProperties: false
      properties:
        request_id:
          allOf:
          - $ref: '#/components/schemas/uuid'
          description: 'A UUID that uniquely identifies the request id.

            This can be given to the support team to help debug non-trivial issues that may occur

            '
        errors:
          type: array
          readOnly: true
          items:
            $ref: '#/components/schemas/error'
          description: The errors associated with the failed API call
    error_code:
      title: error_code
      type: string
      example: invalid_field_value
      enum:
      - auto_fund_not_supported
      - batch_cannot_be_modified
      - bring_your_own_label_not_supported
      - carrier_conflict
      - carrier_disconnected
      - carrier_not_connected
      - carrier_not_supported
      - confirmation_not_supported
      - default_warehouse_cannot_be_deleted
      - field_conflict
      - field_value_required
      - forbidden
      - identifier_conflict
      - identifiers_must_match
      - insufficient_funds
      - invalid_address
      - invalid_billing_plan
      - invalid_field_value
      - invalid_identifier
      - invalid_status
      - invalid_string_length
      - label_images_not_supported
      - meter_failure
      - multiple_sales_orders
      - order_source_not_active
      - rate_limit_exceeded
      - refresh_not_supported
      - request_body_required
      - return_label_not_supported
      - sales_order_link_required
      - settings_not_supported
      - subscription_inactive
      - terms_not_accepted
      - tracking_not_supported
      - trial_expired
      - unauthorized
      - unknown
      - unspecified
      - verification_failure
      - warehouse_conflict
      - webhook_event_type_conflict
      - customs_items_required
      - incompatible_paired_labels
      - invalid_charge_event
      - invalid_object
      - no_rates_returned
      - file_not_found
      - shipping_rule_not_found
      - service_not_determined
      - funding_source_registration_in_progress
      - insurance_failure
      - funding_source_missing_configuration
      - funding_source_error
      - freight_connection_inactive
      - freight_provider_id_required
      - freight_provider_already_connected
      - freight_shipment_not_found
      - freight_tracking_not_available
      - freight_tracking_not_found
      - freight_shipment_not_batchable
      description: The error code specified for the failed API Call
    carrier_code:
      title: carrier_code
      type: string
      pattern: ^[a-z0-9]+(_[a-z0-9]+)*$
      example: dhl_express
      description: 'A shipping carrier, such as `fedex`, `dhl_express`, `stamps_com`, etc.

        '
    uuid:
      title: uuid
      type: string
      format: uuid
      minLength: 36
      maxLength: 36
      pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
      example: aa3d8e8e-462b-4476-9618-72db7f7b7009
      description: A UUID (a.k.a. GUID) that uniquely identifies a resource
    download_file_pdf_response_body:
      title: download_file_pdf_response_body
      type: string
      format: binary
    se_id:
      title: se_id
      type: string
      minLength: 1
      maxLength: 25
      pattern: ^se(-[a-z0-9]+)+$
      example: se-28529731
      description: A string that uniquely identifies a ShipEngine resource, such as a carrier, label, shipment, etc.
    error:
      title: error
      type: object
      description: 'The error structure that gets returned with almost all failed API calls

        '
      required:
      - error_source
      - error_type
      - error_code
      - message
      additionalProperties: false
      properties:
        error_source:
          $ref: '#/components/schemas/error_source'
        error_type:
          $ref: '#/components/schemas/error_type'
        error_code:
          $ref: '#/components/schemas/error_code'
        message:
          type: string
          readOnly: true
          example: Body of request cannot be null.
          minLength: 1
          description: An error message associated with the failed API call
        carrier_id:
          readOnly: true
          allOf:
          - $ref: '#/components/schemas/se_id'
          description: A string that uniquely identifies the carrier that generated the error.
        carrier_code:
          readOnly: true
          allOf:
          - $ref: '#/components/schemas/carrier_code'
          description: 'The name of the shipping carrier that generated the error, such as `fedex`, `dhl_express`, `stamps_com`, etc.

            '
        field_name:
          type: string
          readOnly: true
          example: shipment.ship_to.phone_number
          description: The name of the field that caused the error
    error_source:
      title: error_source
      type: string
      example: shipengine
      enum:
      - carrier
      - order_source
      - shipengine
      description: 'The source of the error, as indicated by the name this informs us if the API call failed because of the

        carrier, the order source, or the ShipEngine API itself.

        '
    error_type:
      title: error_type
      type: string
      example: validation
      enum:
      - account_status
      - business_rules
      - validation
      - security
      - system
      - integrations
      - funding_sources
      description: 'The type of error

        '
    download_file_png_response_body:
      title: download_file_png_response_body
      type: string
      format: binary
  securitySchemes:
    api_key:
      type: apiKey
      name: API-Key
      in: header
      description: 'To authenticate yourself to ShipEngine, you need to include an `API-Key` header in each API call. If you don''t include a key when making an API request, or if you use an incorrect or expired key, then ShipEngine will respond with a `401 Unauthorized` error.

        Learn more about API keys in our [authentication guide](https://docs.shipstation.com/apis/shipengine/docs/guides/auth).

        '
x-refined-from:
- shipengine-openapi-docs-bundle.yaml
- shipengine-openapi.yml
x-provenance:
  method: harvested
  publisher: ShipEngine
  source: https://raw.githubusercontent.com/ShipEngine/shipengine-openapi/master/openapi.yaml
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)