{"templateId":"markdown","versions":[{"version":"v5","label":"v5 (current)","link":"/common-workflows","default":true,"active":true,"folderId":"8a5edab2"},{"version":"v4","label":"v4","link":"/v4/common-workflows","default":false,"active":false,"folderId":"8a5edab2"},{"version":"v3","label":"v3 (legacy)","link":"/v3/common-workflows","default":false,"active":false,"folderId":"8a5edab2"}],"sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Common Workflows","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"common-workflows","__idx":0},"children":["Common Workflows"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["End-to-end flows that chain V5 endpoints together. Each workflow lists the"," ","exact endpoint sequence and what to do with the response between steps."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"courier-shipment-lifecycle","__idx":1},"children":["Courier shipment lifecycle"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Create, rate, label, and ship a single courier package. The most common V5"," ","flow — covers ~80% of carrier integrations."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"#"},"children":["#"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Step"},"children":["Step"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Endpoint"},"children":["Endpoint"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What you do"},"children":["What you do"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Create the shipment"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /shipments"]}," with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type: courier"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Send ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["to_address"]}," + ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["packages"]},". Returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data.id"]}," (the V5 ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["shipment_id"]},")."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["List rates"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /rates/{shipment_id}"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Pick a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["carrier.service_code"]}," (e.g. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canada_post.expedited"]},")."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Buy the label"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /labels/{shipment_id}"]}," with the chosen ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["service"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Charges credits. Returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data.label_url"]}," (PDF) + ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data.tracking_code"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["4"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Schedule a pickup (optional)"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /pickups"]}," with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{ shipment_ids: [...] }"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Only valid for courier shipments (FedEx/UPS/Purolator via Freightcom)."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use an ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Idempotency-Key"]}," header on steps 1, 3, and 4 so network retries can't"," ","double-charge or double-book."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"ltl-shipment-booking","__idx":2},"children":["LTL shipment booking"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Less-than-truckload freight follows the same shape, just with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type: ltl"]}," and"," ","a different cancel endpoint."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"#"},"children":["#"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Step"},"children":["Step"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Endpoint"},"children":["Endpoint"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What you do"},"children":["What you do"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Create the LTL shipment"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /shipments"]}," with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type: ltl"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data.id"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Get LTL quotes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /rates/{shipment_id}"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["LTL carriers (Freightcom)."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Book with the carrier"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /labels/{shipment_id}"]}," with the chosen rate"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data.confirmation_number"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["4"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Cancel a booked LTL (optional)"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /ltl/{shipment_id}/cancel"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Voids the booking with the carrier. Use instead of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DELETE /shipments/{id}"]}," for LTL."]}]}]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"batch-processing","__idx":3},"children":["Batch processing"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Group many shipments into a single batch, generate labels for all of them, and"," ","drain per-shipment failures."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"#"},"children":["#"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Step"},"children":["Step"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Endpoint"},"children":["Endpoint"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What you do"},"children":["What you do"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Create the batch"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /batches"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Send ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{ name, shipment_ids }"]},". Returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data.id"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Trigger processing"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /batches/{batch_id}/process"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["202"]},". Label generation runs async."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Poll status"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /batches/{batch_id}"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Repeat until ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data.status != \"processing\""]},". Realistic clients back off (1s → 2s → 4s)."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["4"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Drain errors"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /batches/{batch_id}/errors"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Per-shipment failures with the validation problem."]}]}]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"top-up-credits-then-buy-a-label","__idx":4},"children":["Top up credits, then buy a label"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Labels are paid from the account's credit balance. If the balance is low,"," ","top up first."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"#"},"children":["#"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Step"},"children":["Step"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Endpoint"},"children":["Endpoint"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What you do"},"children":["What you do"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Charge the payment method"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /credits/top-up"]}," with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{ amount, payment_method_id? }"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["payment_method_id"]}," is optional — defaults to the account's default card. Returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data.id"]}," (the new transaction)."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Confirm the new balance"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /credits/balance"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Sanity-check that the top-up landed and covers the upcoming label cost."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Buy the label"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /labels/{shipment_id}"]}," with the chosen ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["service"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Debits the credit balance."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Always send an ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Idempotency-Key"]}," header on step 1."]}," Top-up retries without"," ","a key double-charge."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"classify-and-approve-a-product","__idx":5},"children":["Classify and approve a product"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Customs declarations need a per-product HS code. V5 wraps the TRU"," ","classification API so you can ask for a suggested code, optionally verify the"," ","manufacturer, then persist the product."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"#"},"children":["#"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Step"},"children":["Step"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Endpoint"},"children":["Endpoint"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What you do"},"children":["What you do"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["1"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Suggest an HS code"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /products/classify"]}," with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{ title, description }"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Returns ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data.hs_code"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["2"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Verify the manufacturer (optional)"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /products/verify-manufacturer"]}," with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{ manufacturer, country_of_origin }"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["CUSMA / country-of-origin compliance check."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["3"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Create the product"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /products"]}," with the verified ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["hs_code"]}," and source fields"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Persists the row that store imports and later shipment-creation calls reference."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If an existing product enters ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Manufacturer Failed"]}," after import, you can run"," ","just step 2 on it and re-call ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /products/{sku}/approve-classification"]},"."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"other-endpoint-level-flows","__idx":6},"children":["Other endpoint-level flows"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["These don't need a multi-step description — they're single calls or small"," ","glue logic."]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Quote rates without creating a shipment"]}," — ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /rates"]}," with shipment"," ","details. Returns rates. No shipment row is created."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Validate addresses"]}," — ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /addresses/validate"]}," before ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /shipments"]}," ","to surface bad zip/postal codes early."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Manage imported orders"]}," — ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /orders"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /orders"]},","," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PUT /orders/{order_id}"]},". Delete only before linking to a non-voided"," ","shipment."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Find drop-off locations"]}," — ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /locations"]},". Render the returned branch"," ","and partner-site addresses; refresh periodically because the catalog"," ","changes."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"idempotency--retry-rules","__idx":7},"children":["Idempotency & retry rules"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All mutating endpoints (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["PUT"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DELETE"]},") accept an ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Idempotency-Key"]}," ","header. A retried request with the same key inside 24h returns the original"," ","response byte-for-byte. Reusing a key with a ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["different"]}," body yields ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["409 idempotency_conflict"]},". See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/errors-idempotency"},"children":["Errors & Idempotency"]},"."]}]},"headings":[{"value":"Common Workflows","id":"common-workflows","depth":1},{"value":"Courier shipment lifecycle","id":"courier-shipment-lifecycle","depth":2},{"value":"LTL shipment booking","id":"ltl-shipment-booking","depth":2},{"value":"Batch processing","id":"batch-processing","depth":2},{"value":"Top up credits, then buy a label","id":"top-up-credits-then-buy-a-label","depth":2},{"value":"Classify and approve a product","id":"classify-and-approve-a-product","depth":2},{"value":"Other endpoint-level flows","id":"other-endpoint-level-flows","depth":2},{"value":"Idempotency & retry rules","id":"idempotency--retry-rules","depth":2}],"frontmatter":{"seo":{"title":"Common Workflows"}},"lastModified":"2026-06-11T19:50:44.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/common-workflows","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}