{"templateId":"openapi_docs","versions":[{"version":"shipengine","label":"ShipStation API (formerly ShipEngine)","link":"/apis/shipengine/openapi/documents","default":false,"active":false,"folderId":"58c9a61d"},{"version":"shipstation-v2","label":"ShipStation V2 API","link":"/apis/openapi/documents","default":true,"active":true,"folderId":"58c9a61d"},{"version":"shipstation-v1","label":"ShipStation V1 API","link":"/apis/shipstation-v1/openapi/documents","default":false,"active":false,"folderId":"58c9a61d"}],"sharedDataIds":{"openAPIDocsStore":"oas-apis/@shipstation-v2/openapi.yaml","sidebar":"sidebar-apis/@shipengine/sidebars.yaml"},"props":{"definitionId":"apis/@shipstation-v2/openapi.yaml","dynamicMarkdocComponents":[],"baseSlug":"/apis/openapi","seo":{"title":"Documents","keywords":"shipping, labels, shipstation, documentation, api","siteUrl":"https://docs.shipstation.com","lang":"en-US","llmstxt":{"hide":false,"title":"ShipStation API LLM Docs","description":"Find links and references to all markdown documentation for use with LLMs","excludeFiles":[]},"description":"Document Upload lets you submit self-prepared customs paperwork — such as Pro Forma Invoices, USMCA forms (for example, the USMCA Certification of Origin), and other supporting documents — directly to the carrier. Use it whenever a shipment requires supplemental international documentation, helping to prevent customs delays and delivery issues.\n\nDocuments can be provided at either the **shipment level** or the **label level** — that is, before or after a label is generated:\n\n- **Shipment level (before a label exists).** Register the document with [Register a document for a shipment](#operation/register_shipment_document). Documents registered at the shipment level are forwarded to the carrier automatically.\n- **Label level (after a label is generated).** Register the document with [Register a document for a label](#operation/register_label_document), then call [Send label documents](#operation/send_label_documents) to transmit it to the carrier.\n\nTo enable document upload for a shipment or label, set the `pending_documents` flag on the shipment's `customs` object.\n\nCarrier Document Upload is currently supported for **UPS** and **FedEx** only. Accepted document types and file size vary by carrier — see the [Carrier Document Upload guide](/upload-carrier-documents) for the full list.\n\nFor **step-by-step instructions on uploading documents through the ShipStation API dashboard**, see the [Customs Declarations: Document Upload help article](https://help.shipstation.com/hc/en-us/articles/50888603341211). This is useful for operations teams who need to upload documents manually or as a fallback if API integration issues occur.\n"},"itemId":"documents","disableAutoScroll":true,"metadata":{"subType":"openapi-operation"},"compilationErrors":[],"markdown":{"partials":{},"variables":{"rbac":{"teams":["anonymous"]},"user":{},"remoteAddr":{"hostname":"docs.shipstation.com","port":4000,"ipAddress":"216.73.217.100"},"lang":"default_locale","env":{"PUBLIC_REDOCLY_BRANCH_NAME":"main"}}},"pagePropGetterError":{"message":"","name":""}},"slug":"/apis/openapi/documents","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}