latestOpenAPI 3.1.0MIT2026-08-221643491.4 MB

d3d8c21cd227

documents

Register a document for a shipment

<aside class="access" aria-label="Endpoint access"> <table class="access__table"> <thead> <tr> <th class="access__table-header">Products</th> <th class="access__table-header">Plans</th> </tr> </thead> <tbody> <tr> <td class="access__table-cell access__product"> <img class="access__logo" src="/static/logos/shipstation-api-logo.svg" alt="ShipStation API Logo" loading="lazy" decoding="async"/> <div class="access__sub">Formerly ShipEngine</div> </td> <td class="access__table-cell access__plans"> <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-api-free.md" class="access__plan">Free</a> <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-api-advanced-enterprise.md" class="access__plan">Advanced</a> <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-api-advanced-enterprise.md" class="access__plan">Enterprise</a> </td> </tr> <tr> <td class="access__table-cell"> <img class="access__logo" src="/static/logos/shipstation-logo.svg" alt="ShipStation Logo" loading="lazy" decoding="async"/> </td> <td class="access__table-cell access__plans"> <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-free-starter.md" class="access__plan access__plan--off">Free</a> <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-free-starter.md" class="access__plan access__plan--off">Starter</a> <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-standard-premium.md" class="access__plan access__plan--off">Standard</a> <a href="/apis/@shipstation-v2/docs/getting-started/plans/shipstation-standard-premium.md" class="access__plan access__plan--off">Premium</a> </td> </tr> </tbody> </table> <footer class="access__footer"> <a class="access__help" href="/apis/@shipstation-v2/docs/getting-started/products-and-plans.md"> Learn about products and plans <img src="/static/icons/external-link.svg" alt="External Link Icon" style="width: 16px;" loading="lazy" decoding="async"/> </a> </footer> </aside>

Register a carrier document against a shipment. The response returns an upload target; upload the document file to that target so it can later be sent to the carrier.

post/v2/shipments/{shipment_id}/documents

Request body

type'commercial_invoice' | 'certificate_of_origin' | 'usmca_commercial_invoice_certification_of_origin' | 'usmca_certification_of_origin' | 'pro_forma_invoice' | 'other' | 'authorization_form' | 'export_accompanying_document' | 'export_license' | 'import_permit' | 'one_time_nafta' | 'power_of_attorney' | 'packing_list' | 'sed_document' | 'shippers_letter_of_instruction' | 'declaration' | 'section_232_customs_affidavit' required

The type of carrier document being registered. Supported values vary by carrier. See the Carrier Document Upload guide for the document types each carrier accepts.

format'PDF' | 'PNG'

The file format of the document being uploaded.

file_namestring required

The file name of the document, including its extension.

Example request

{
  "type": "usmca_commercial_invoice_certification_of_origin",
  "format": "PDF",
  "file_name": "usmca-certification-of-origin.pdf"
}

Response

The document was registered successfully.

document_idstring

The unique identifier assigned to the registered document.

Example response

{
  "document_id": "019eb24e-cd4e-7609-b740-c2324fe93272",
  "upload": {
    "url": "https://carrier-doc-upload.s3.amazonaws.com",
    "fields": {
      "Content-Type": "application/pdf",
      "key": "019eb24e-cd4e-7609-b740-c2324fe93272.pdf",
      "x-amz-meta-document-id": "019eb24e-cd4e-7609-b740-c2324fe93272",
      "x-amz-meta-seller-id": "8801990",
      "X-Amz-Algorithm": "AWS4-HMAC-SHA256",
      "X-Amz-Credential": "ASIA.../20260610/us-east-1/s3/aws4_request",
      "X-Amz-Date": "20260610T161249Z",
      "Policy": "eyJleHBpcmF0aW9uIjoi...",
      "X-Amz-Signature": "b81189b9df29...",
      "X-Amz-Security-Token": "IQoJb3JpZ2lu..."
    }
  }
}