# ShipStream Developer Center ## Docs - [Get Started](https://docs.shipstream.io/home/index.md) - [Find Your URL](https://docs.shipstream.io/home/find-your-url.md) - [Introduction](https://docs.shipstream.io/global-api/introduction.md) - [Authentication](https://docs.shipstream.io/global-api/authentication.md) - [Versions](https://docs.shipstream.io/global-api/versions.md) - [Paging Parameters](https://docs.shipstream.io/global-api/paging-parameters.md) - [Sorting Syntax](https://docs.shipstream.io/global-api/sorting-syntax.md) - [Filtering Syntax](https://docs.shipstream.io/global-api/filtering-syntax.md) - [Selecting Fields](https://docs.shipstream.io/global-api/selecting-fields.md) - [Response Codes and Errors](https://docs.shipstream.io/global-api/response-codes-errors.md) - [List all Warehouses](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/get.md): Returns a list of `Warehouse` objects. - [Create Warehouse](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/post.md): Creates a new `Warehouse` in ShipStream according to the request body. - [Get one Warehouse](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/get.md): Returns a single `Warehouse` object specified by its `id` path parameter. - [Update Warehouse](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/put.md): Updates a `Warehouse` specified by its `id` path parameter and according to the request body. - [Delete Warehouse](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/delete.md): Deletes a `Warehouse` specified by its `id` path parameter. - [List all Locations](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/locations/get.md): Returns a list of `Location` objects specified by a warehouse `id` path parameter. - [Create Location](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/locations/post.md): Creates a new `Location` specified by a warehouse `id` and according to the request body. - [Get one Location](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/locations/{location_id}/get.md): Returns a single `Location` object specified by the warehouse `id` and `location_id` path parameters. - [Update Location](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/locations/{location_id}/put.md): Updates a `Location` specified by the warehouse `id` and `location_id` path parameters and according to the request body. - [Delete Location](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/locations/{location_id}/delete.md): Deletes an existing Location specified by the warehouse `id` and `location_id` path parameters. - [Get Location by Label](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/locationsByLabel/{label}/get.md): Returns a single `Location` object specified by the warehouse `id` and location `label` path parameters. - [Batch update Locations](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/locations/batch/post.md): Creates or updates a `Location` collection specified by a warehouse `id` path parameter and according to the request body. - [Batch Update Location Tags](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/locations/tags/post.md): Adds, removes or replaces `LocationTag` assignments on many locations at once, mirroring the admin location grid's tag mass actions. - [List Location Tags](https://docs.shipstream.io/global-api/endpoint/v1/inventory/location-tags/get.md): Returns a list of `LocationTag` objects. - [Create Location Tag](https://docs.shipstream.io/global-api/endpoint/v1/inventory/location-tags/post.md): Creates a new `LocationTag` according to the request body. The `name` must be unique among live location tags; deleting a tag renames it with a suffix, so a deleted tag's original name is immediately reusable. - [Get one Location Tag](https://docs.shipstream.io/global-api/endpoint/v1/inventory/location-tags/{id}/get.md): Returns a single `LocationTag` object specified by its `id` path parameter. Soft-deleted tags remain readable here. - [Update Location Tag](https://docs.shipstream.io/global-api/endpoint/v1/inventory/location-tags/{id}/put.md): Partially updates a `LocationTag` specified by its `id` path parameter. Only the properties present in the request body are changed. - [Delete Location Tag](https://docs.shipstream.io/global-api/endpoint/v1/inventory/location-tags/{id}/delete.md): Soft-deletes a `LocationTag` specified by its `id` path parameter. The tag row is kept so that locations already carrying it continue to display it; only new assignments are prevented. The tag's `name` gains a `(Deleted ID: n)` suffix, freeing the original name for reuse. - [List Slot Types](https://docs.shipstream.io/global-api/endpoint/v1/inventory/slot-types/get.md): Returns a list of `SlotType` objects. - [Create Slot Type](https://docs.shipstream.io/global-api/endpoint/v1/inventory/slot-types/post.md): Creates a new `SlotType` according to the request body. The `name` must be unique. - [Get one Slot Type](https://docs.shipstream.io/global-api/endpoint/v1/inventory/slot-types/{id}/get.md): Returns a single `SlotType` object specified by its `id` path parameter. - [Update Slot Type](https://docs.shipstream.io/global-api/endpoint/v1/inventory/slot-types/{id}/put.md): Partially updates a `SlotType` specified by its `id` path parameter. Only the properties present in the request body are changed; sending `patterns` replaces the whole list. - [Delete Slot Type](https://docs.shipstream.io/global-api/endpoint/v1/inventory/slot-types/{id}/delete.md): Deletes a `SlotType` specified by its `id` path parameter. - [List Location Profiles](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/location-profiles/get.md): Returns Location Profiles of one warehouse specified by its `id` path parameter, with publication status, revision snapshots, the ordered match definition, and live usage counts. - [Create Location Profile](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/location-profiles/post.md): Creates a Location Profile in the warehouse specified by its `id` path parameter and starts materializing its membership. - [Get Location Profile](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/location-profiles/{profile_id}/get.md): Returns one `LocationProfile` of one warehouse specified by the `id` and `profile_id` path parameters. `match` is the latest intended definition — the pending revision's clauses while a rebuild is in flight, otherwise the published revision's. - [Update Location Profile](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/location-profiles/{profile_id}/put.md): Updates the Location Profile identified by the `id` and `profile_id` path parameters. Only the properties present in the body are applied. - [Delete Location Profile](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/location-profiles/{profile_id}/delete.md): Deletes the Location Profile identified by the `id` and `profile_id` path parameters, along with its revisions, match clauses and materialized membership. - [List Location Profile member Locations](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/location-profiles/{profile_id}/locations/get.md): Returns full `Location` objects from the resolved membership of one `LocationProfile`. The response supports the same field selection, filtering, sorting, and cursor paging as the Warehouse Locations endpoint. Membership is read from the ready active revision, and `meta.profile_revision_id` identifi… - [Rebuild Location Profile](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/location-profiles/{profile_id}/rebuild/post.md): Re-materializes the current definition of the Location Profile identified by the `id` and `profile_id` path parameters, under a fresh revision. The definition itself is unchanged. - [List all Products and Packaging](https://docs.shipstream.io/global-api/endpoint/v1/inventory/products/{type}/get.md): Returns a list of [Products](https://help.shipstream.io/article/8b9rvho130-products) (SKUs) or [Packaging Features](https://help.shipstream.io/article/cxyprn6ysa-packaging-features) specified by the `type` path parameter and according to the request body. - [Get Product or Packaging](https://docs.shipstream.io/global-api/endpoint/v1/inventory/products/{type}/{id}/get.md): Returns a single `Product` or `Packaging*` object specified by its `id` & `type` path parameter. - [Update Product or Packaging](https://docs.shipstream.io/global-api/endpoint/v1/inventory/products/{type}/{id}/put.md): Updates a `Product` in ShipStream specified by its `id` path parameter and according to the request body. - [Create Product or Packaging](https://docs.shipstream.io/global-api/endpoint/v1/inventory/products/post.md): Creates a new `Product` or `PackagingFeature` in ShipStream according to the request body. - [Get Product Classifications](https://docs.shipstream.io/global-api/endpoint/v1/inventory/products/{type}/{id}/classifications/get.md): Returns the Product's current materialized Product Profile memberships and per-Warehouse Handling Class assignments. Classification is eventually consistent: Product changes flow through an asynchronous changelog and typically converge within a couple of minutes, and no per-Product freshness signal… - [Editing Product Profile Conditions](https://docs.shipstream.io/global-api/product-profile-conditions.md): Build and save Product Profile conditions using the Global API metadata catalogue. - [List Product Profiles](https://docs.shipstream.io/global-api/endpoint/v1/inventory/product-profiles/get.md): Returns Product Profiles and their current asynchronous classification state. Request `fields=conditions,conditions_readable` when a client needs the canonical condition definition for editing. - [Create Product Profile](https://docs.shipstream.io/global-api/endpoint/v1/inventory/product-profiles/post.md): Creates a Product Profile. When `code` is omitted or blank, ShipStream generates one from the name. Classification is scheduled after the save commits. Add `fields=conditions,conditions_readable` to include canonical conditions in the created resource. - [List Product Profile condition fields](https://docs.shipstream.io/global-api/endpoint/v1/inventory/product-profiles/condition-fields/get.md): Returns the server-owned Product condition catalogue for editor clients. Load this catalogue when opening an editor; it is not repeated in each Product Profile response. Fields with a `value_source` use the advertised bounded search endpoint instead of an inline option list. - [Get Product Profile by code](https://docs.shipstream.io/global-api/endpoint/v1/inventory/product-profiles/by-code/{code}/get.md): Returns a Product Profile by its stable immutable external code. Add `fields=conditions,conditions_readable` when loading the Profile for editing. - [Get Product Profile](https://docs.shipstream.io/global-api/endpoint/v1/inventory/product-profiles/{id}/get.md): Returns one `ProductProfile` by its numeric ID. Add `fields=conditions,conditions_readable` when loading the Profile for editing. - [Update Product Profile](https://docs.shipstream.io/global-api/endpoint/v1/inventory/product-profiles/{id}/put.md): Partially updates a Product Profile. `code` is immutable and is not accepted. A conditions change schedules asynchronous reclassification after commit. - [Delete Product Profile](https://docs.shipstream.io/global-api/endpoint/v1/inventory/product-profiles/{id}/delete.md): Deletes a Product Profile. Returns `422` with `used_by.slotting_rules`, `used_by.replenishment_policies`, and `used_by.handling_classes` counts while any dependency exists. - [List Product Profile member Products](https://docs.shipstream.io/global-api/endpoint/v1/inventory/product-profiles/{id}/products/get.md): Returns the current materialized Product membership. The request does not evaluate conditions; after creating a Profile or changing its conditions, poll it until classification is `up_to_date`. Product changes are classified through a separate asynchronous changelog, so a recently changed Product ma… - [List Product condition values](https://docs.shipstream.io/global-api/endpoint/v1/inventory/product-condition-values/get.md): Returns a bounded prefix search of raw values for a Product condition field. Use the field, minimum query length, and maximum result count advertised by the condition catalogue. Results include disabled simple Products because saved Profile conditions must remain editable. - [Editing Handling Class Conditions](https://docs.shipstream.io/global-api/handling-class-conditions.md): Build and save Handling Class conditions using the Global API metadata catalogue. - [List Handling Classes](https://docs.shipstream.io/global-api/endpoint/v1/inventory/handling-classes/get.md): Returns Handling Classes and their current asynchronous classification state. Request `fields=conditions,conditions_readable` when a client needs the canonical condition definition for editing. - [Create Handling Class](https://docs.shipstream.io/global-api/endpoint/v1/inventory/handling-classes/post.md): Creates a Warehouse-scoped Handling Class. When `code` is omitted or blank, ShipStream generates one from the name. Classification is scheduled after the save commits. Add `fields=conditions,conditions_readable` to include canonical conditions in the created resource. - [List Handling Class condition fields](https://docs.shipstream.io/global-api/endpoint/v1/inventory/handling-classes/condition-fields/get.md): Returns the server-owned Product condition catalogue for Handling Class editor clients. Load this catalogue when opening an editor; it is not repeated in each Handling Class response. Fields with a `value_source` use the advertised bounded search endpoint, while Product Profiles are returned as a fi… - [Get Handling Class by code](https://docs.shipstream.io/global-api/endpoint/v1/inventory/handling-classes/by-code/{code}/get.md): Returns a Handling Class by its stable immutable code. Add `fields=conditions,conditions_readable` when loading the class for editing. - [Get Handling Class](https://docs.shipstream.io/global-api/endpoint/v1/inventory/handling-classes/{id}/get.md): Returns one `HandlingClass` by its numeric ID. Add `fields=conditions,conditions_readable` when loading the class for editing. - [Update Handling Class](https://docs.shipstream.io/global-api/endpoint/v1/inventory/handling-classes/{id}/put.md): Partially updates a Handling Class. `code` is immutable and is not accepted. Changes to conditions, sort order, or Warehouse assignments schedule asynchronous reclassification after commit. - [Delete Handling Class](https://docs.shipstream.io/global-api/endpoint/v1/inventory/handling-classes/{id}/delete.md): Deletes a Handling Class. Returns `422` with `used_by.slotting_rules` and `used_by.replenishment_policies` counts while either dependency exists. - [List Slotting Rule Sets](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/slotting-rule-sets/get.md): Returns Slotting Rule Sets of one warehouse with current Rule counts and the latest recorded conflict results. Rule counts reflect current child Rules. Conflict fields may change after asynchronous Slotting processing completes. - [Create Slotting Rule Set](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/slotting-rule-sets/post.md): Creates an inactive Slotting Rule Set in the referenced warehouse. Add its Rules before activating it with the update endpoint. - [Get Slotting Rule Set](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/slotting-rule-sets/{rule_set_id}/get.md): Returns one Slotting Rule Set identified by the warehouse `id` and `rule_set_id` path parameters. - [Update Slotting Rule Set](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/slotting-rule-sets/{rule_set_id}/put.md): Partially updates a Slotting Rule Set. Omitted properties keep their saved values. Activating or deactivating a Set schedules the existing Slotting follow-up work after the update commits. - [Delete Slotting Rule Set](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/slotting-rule-sets/{rule_set_id}/delete.md): Deletes a Slotting Rule Set and its child Rules from the referenced warehouse. - [Duplicate Slotting Rule Set](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/slotting-rule-sets/{rule_set_id}/duplicate/post.md): Creates an inactive copy in the requested target Warehouse. The copy uses the source name with a ` (Copy)` suffix and copies the description and Rules. - [List Slotting Rules](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/slotting-rule-sets/{rule_set_id}/rules/get.md): Returns cursor-paged Rules belonging to one Rule Set in the referenced warehouse. Product subjects keep their writable ID fields. An editor can additionally request `fields=merchants,product_profiles,handling_classes` with minimal nested fields such as `fields:product_profiles=name,code` to resolve… - [Create Slotting Rule](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/slotting-rule-sets/{rule_set_id}/rules/post.md): Creates a Rule in the referenced Warehouse Rule Set. Hard Rules use `require` or `forbid` and omit `strength`; soft Rules use `prefer` or `discourage` and require a strength. The existing Slotting lifecycle schedules any required asynchronous recalculation after the save commits. - [Get Slotting Rule](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/slotting-rule-sets/{rule_set_id}/rules/{rule_id}/get.md): Returns one Rule identified by its warehouse, owning Rule Set, and Rule ID. A Rule outside either parent scope is not returned. To resolve the current editor selections, add `fields=merchants,product_profiles,handling_classes` and request only display fields such as `fields:merchants=code,name,statu… - [Update Slotting Rule](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/slotting-rule-sets/{rule_set_id}/rules/{rule_id}/put.md): Partially updates a Rule in the referenced Warehouse Rule Set. Omitted properties retain their saved values. Empty subject lists clear those selectors. Hard Rules omit `strength`; soft Rules require it. - [Delete Slotting Rule](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/slotting-rule-sets/{rule_set_id}/rules/{rule_id}/delete.md): Deletes a Rule from the referenced Warehouse Rule Set. Existing Slotting lifecycle handling removes derived rows and schedules any required asynchronous recalculation after the delete commits. - [List Slotting Conflicts](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/slotting-conflicts/get.md): Returns cursor-paged Slotting Rules whose latest durable conflict result is positive in the referenced Warehouse. Rule conflict fields are written by asynchronous conflict detection. - [List Policies](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/replenishment-policies/get.md): Returns the Replenishment Policy configurations of one warehouse specified by its `id` path parameter, in evaluation order. Calculated per-Product output is available from the Replenishment Report endpoint. - [Create Policy](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/replenishment-policies/post.md): Creates a Replenishment Policy in the warehouse specified by its `id` path parameter. - [List Policy Options](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/replenishment-policies/options/get.md): Returns the configured Product Velocity periods that may be selected when creating or editing a Replenishment Policy in the warehouse specified by `id`. Load these measured-small options once when opening the editor; they are not repeated in every Policy resource. - [Get Policy](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/replenishment-policies/{policy_id}/get.md): Returns one `ReplenishmentPolicy` of one warehouse specified by the `id` and `policy_id` path parameters. - [Update Policy](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/replenishment-policies/{policy_id}/put.md): Updates the Replenishment Policy identified by the `id` and `policy_id` path parameters. Only the properties present in the body are applied; an absent one keeps its stored value. - [Delete Policy](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/replenishment-policies/{policy_id}/delete.md): Deletes the Replenishment Policy identified by the `id` and `policy_id` path parameters, along with its Merchant, Product Profile, and Handling Class selections. - [List Report Rows](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/replenishment-report/get.md): Returns published Replenishment Report rows for one warehouse specified by its `id` path parameter. Each row snapshots the effective Replenishment Policy and Location Profile, the exact profile revision used for aggregation, quantity/DOI/shortfall results, and the calculation time. - [Get Replenishment Index Status](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/replenishment-index/status/get.md): Returns the rebuild lifecycle of the Warehouse's published Replenishment Index: the requested, building, and published generations, whether the published generation satisfies the newest request, and failure diagnostics. - [Rebuild Replenishment Index](https://docs.shipstream.io/global-api/endpoint/v1/inventory/warehouses/{id}/replenishment-index/rebuild/post.md): Durably requests a rebuild of the Warehouse's Replenishment Index. Repeated requests coalesce into one pending generation, so retrying a request that may not have landed is safe; the published report keeps serving its current generation until the new one publishes. - [List total inventory levels](https://docs.shipstream.io/global-api/endpoint/v1/inventory/levels/total/get.md): Returns a list of `TotalLevel` objects showing aggregated inventory quantities across all warehouses for each product. - [List warehouse inventory levels](https://docs.shipstream.io/global-api/endpoint/v1/inventory/levels/warehouse/get.md): Retrieve inventory levels grouped by warehouse for each product. This endpoint returns warehouse-specific inventory data with quantity information per product per warehouse. - [List active hold reasons](https://docs.shipstream.io/global-api/endpoint/v1/inventory/hold-reasons/get.md): Returns the active hold-reason tree as a flat list of parent (system) reasons; each parent inlines its user-defined child reasons via the `children` array. Schema enforces a single nesting level — child reasons never carry a `children` key. - [Create user-defined hold reason](https://docs.shipstream.io/global-api/endpoint/v1/inventory/hold-reasons/post.md): Creates a new user-defined child hold reason under an existing top-level system reason. System fields (`is_system`, `reason_id`, `parent_code`, `parent_reason_id`) are server-controlled and must not be included in the request body. - [Update hold reason](https://docs.shipstream.io/global-api/endpoint/v1/inventory/hold-reasons/{id}/put.md): Partially updates a `HoldReason` specified by an `id` path parameter. Per-field constraints differ between system and user-defined reasons — see each property's description below. - [Delete user-defined hold reason](https://docs.shipstream.io/global-api/endpoint/v1/inventory/hold-reasons/{id}/delete.md): Deletes a user-defined `HoldReason` specified by an `id` path parameter. System reasons cannot be deleted. User reasons that are referenced by existing holds also cannot be deleted (returns 422). - [List / search inventory holds](https://docs.shipstream.io/global-api/endpoint/v1/inventory/holds/get.md): Returns a list of `Hold` objects. Cross-merchant by design — filter by `merchant_id` or `product_id`/`sku` to scope to a specific merchant. - [Get one Hold by ID](https://docs.shipstream.io/global-api/endpoint/v1/inventory/holds/{id}/get.md): Returns a single `Hold` object specified by a hold `id` path parameter. - [Place location-level Hold](https://docs.shipstream.io/global-api/endpoint/v1/inventory/holds/location/post.md): Places an inventory hold on the specified location for the given reason. A hold freezes the entire location: its on-shelf inventory becomes held — excluded from available and advertised quantity and unavailable for allocation — until the hold is released. - [Place lot-level Hold (with optional BOM cascade)](https://docs.shipstream.io/global-api/endpoint/v1/inventory/holds/lot/post.md): Places holds on every active putaway location currently carrying the named lot. - [Release one Hold by ID](https://docs.shipstream.io/global-api/endpoint/v1/inventory/holds/{id}/release/post.md): Releases a single active `stock_hold` row by its `id`. - [Release all active Holds on Lot](https://docs.shipstream.io/global-api/endpoint/v1/inventory/holds/lot/{lot_id}/release/post.md): Releases every active `stock_hold` row whose `lot_id` matches the path parameter, regardless of reason. Useful for "lift quarantine on lot X" workflows. - [List all Deliveries](https://docs.shipstream.io/global-api/endpoint/v1/receiving/{type}/get.md): Returns a list of `ASN`, `RMA`, or `Other` objects specified by the `type` path parameter. - [Get one Delivery](https://docs.shipstream.io/global-api/endpoint/v1/receiving/{type}/{id}/get.md): Returns a single `ASN`, `RMA`, or `Other` object specified by its `type` & `id` path parameters. - [List all Shipments](https://docs.shipstream.io/global-api/endpoint/v1/shipping/shipments/get.md): Returns a list of `Shipment` objects. - [Get one Shipment](https://docs.shipstream.io/global-api/endpoint/v1/shipping/shipments/{id}/get.md): Returns a single `Shipment` object specified by a shipment `id` path parameter. - [Process Shipment](https://docs.shipstream.io/global-api/endpoint/v1/shipping/shipments/{id}/process/post.md): Processes a `Shipment`, specified by its `id` path parameter, in the “new” status so that it is reserved to specific stock locations and is ready to be picked. - [Pick Shipment](https://docs.shipstream.io/global-api/endpoint/v1/shipping/shipments/{id}/pick/post.md): Completes some or all picks for the `Shipment` specified by its `id` path parameter. - [Pack Shipment](https://docs.shipstream.io/global-api/endpoint/v1/shipping/shipments/{id}/pack/post.md): This endpoint can be used in multiple modes of operation and in all cases operates on a `Shipment` specified by its `id` path parameter. - [Mark Shipment as Shipped](https://docs.shipstream.io/global-api/endpoint/v1/shipping/shipments/{id}/shipped/post.md): Marks a `Shipment` in the "packed" status as shipped, specified by its `id` path parameter. - [Get Shipment Reservations](https://docs.shipstream.io/global-api/endpoint/v1/shipping/shipments/{id}/reservations/get.md): Returns the assigned reservations (pick locations) for a shipment in Picking status. - [Mass update orders](https://docs.shipstream.io/global-api/endpoint/v1/shipping/orders/massUpdate/post.md): Updates a batch of orders specified by and according to the request body. - [List all Orders](https://docs.shipstream.io/global-api/endpoint/v1/shipping/orders/get.md): Returns a list of `Order` objects. - [Get one Order](https://docs.shipstream.io/global-api/endpoint/v1/shipping/orders/{id}/get.md): Returns a single `Order` object specified by an order `id` path parameter. - [Method not allowed](https://docs.shipstream.io/global-api/endpoint/v1/shipping/orders/massUpdate/get.md): GET method is not allowed for this endpoint. Use POST instead. - [List all Retailers](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/get.md): Returns a list of `Retailer` objects. Archived retailers are excluded by default. Use `archived=true` to include them. - [Create Retailer](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/post.md): Creates a new `Retailer`. - [Get one Retailer](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/get.md): Returns a single `Retailer` object specified by a retailer `id` path parameter. - [Update Retailer](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/put.md): Updates a `Retailer` specified by its `id` path parameter and according to the request body. - [Delete Retailer](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/delete.md): Archives a `Retailer` specified by its `id` path parameter. The row is soft-deleted by setting status to `archived`. - [List Retailer Identifiers](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/identifiers/get.md): Returns a list of `RetailerIdentifier` objects under the given Retailer. - [Create Retailer Identifier](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/identifiers/post.md): Creates a new `RetailerIdentifier` under the given Retailer. - [Get one Retailer Identifier](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/identifiers/{identifier_id}/get.md): Returns a single `RetailerIdentifier` under the given Retailer. - [Update Retailer Identifier](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/identifiers/{identifier_id}/put.md): Updates a `RetailerIdentifier` under the given Retailer. - [Delete Retailer Identifier](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/identifiers/{identifier_id}/delete.md): Hard-deletes a `RetailerIdentifier` under the given Retailer. The parent Retailer is unaffected. - [List Retailer Ship-To Locations](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/ship-to-locations/get.md): Returns a list of `RetailerShipToLocation` objects under the given Retailer. - [Create Retailer Ship-To Location](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/ship-to-locations/post.md): Creates a new `RetailerShipToLocation`. If `is_default=true`, sibling defaults under the same Retailer are atomically unset. - [Get one Retailer Ship-To Location](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/ship-to-locations/{location_id}/get.md): Returns a single `RetailerShipToLocation` under the given Retailer. - [Update Retailer Ship-To Location](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/ship-to-locations/{location_id}/put.md): Updates a `RetailerShipToLocation`. If the resulting `is_default=true`, sibling defaults under the same Retailer are atomically unset. - [Delete Retailer Ship-To Location](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/ship-to-locations/{location_id}/delete.md): Hard-deletes a `RetailerShipToLocation`. The parent Retailer is unaffected. - [List Retailer Routing Guides](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/routing-guides/get.md): Returns a list of `RetailerRoutingGuide` objects under the given Retailer. - [Create Retailer Routing Guide](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/routing-guides/post.md): Creates a new `RetailerRoutingGuide` from base64-encoded file content. Allowed extensions: pdf, doc, docx, xls, xlsx, csv, txt. Maximum decoded file size: 20 MB. - [Get one Retailer Routing Guide](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/routing-guides/{guide_id}/get.md): Returns a single `RetailerRoutingGuide` (metadata only — use `/file` for content). - [Update Retailer Routing Guide metadata](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/routing-guides/{guide_id}/put.md): Updates `title` and/or `description` only. `file_name` / `file_content` in the body return `400`; delete and re-create the guide to replace the file. - [Delete Retailer Routing Guide](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/routing-guides/{guide_id}/delete.md): Hard-deletes a `RetailerRoutingGuide` and removes the linked storage file. The parent Retailer is unaffected. - [Get Retailer Routing Guide file content](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/routing-guides/{guide_id}/file/get.md): Returns the routing-guide file body wrapped as JSON. `file_content` is base64-encoded; clients decode it locally. - [List Retailer Merchant Settings](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/merchant-settings/get.md): Returns a list of `RetailerMerchantSetting` objects under the given Retailer. - [Create Retailer Merchant Setting](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/merchant-settings/post.md): Creates a new `RetailerMerchantSetting` under the given Retailer. Only one row may exist per (retailer, merchant) pair. - [Get one Retailer Merchant Setting](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/merchant-settings/{setting_id}/get.md): Returns a single `RetailerMerchantSetting` under the given Retailer. - [Update Retailer Merchant Setting](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/merchant-settings/{setting_id}/put.md): Updates a `RetailerMerchantSetting` under the given Retailer. The `merchant` cannot be changed. - [Delete Retailer Merchant Setting](https://docs.shipstream.io/global-api/endpoint/v1/shipping/retailers/{id}/merchant-settings/{setting_id}/delete.md): Hard-deletes a `RetailerMerchantSetting` under the given Retailer. The parent Retailer is unaffected. - [List all Merchants](https://docs.shipstream.io/global-api/endpoint/v1/system/merchants/get.md): Returns a list of `Merchant` objects sorted ascending by `id` unless specified otherwise. - [List all Users](https://docs.shipstream.io/global-api/endpoint/v1/system/users/{type}/get.md): Returns a list of `User` objects of a specified user `type` path parameter. - [Get one User](https://docs.shipstream.io/global-api/endpoint/v1/system/users/{type}/{id}/get.md): Returns a single `User` object specified by its `type` and `id` path parameters. - [Update one User](https://docs.shipstream.io/global-api/endpoint/v1/system/users/{type}/{id}/put.md): Updates an existing `User` specified by its `type` and `id` path parameters and according to the request body. - [Delete User](https://docs.shipstream.io/global-api/endpoint/v1/system/users/{type}/{id}/delete.md): Deletes an existing `User` specified by its `type` and `id` path parameters. - [List all User Roles](https://docs.shipstream.io/global-api/endpoint/v1/system/userRoles/{type}/get.md): Returns a list of `UserRole` objects specified by its `type` path parameter. - [Get one User Role](https://docs.shipstream.io/global-api/endpoint/v1/system/userRoles/{type}/{id}/get.md): Returns a single `UserRole` object specified by its `type` and `id` path parameters. - [Update one User Role](https://docs.shipstream.io/global-api/endpoint/v1/system/userRoles/{type}/{id}/put.md): Update an existing User Role by internal ID. - [Delete User Role](https://docs.shipstream.io/global-api/endpoint/v1/system/userRoles/{type}/{id}/delete.md): Deletes an existing `UserRole` specified by its `type` and `id` path parameters. - [Healthcheck](https://docs.shipstream.io/global-api/endpoint/v1/system/status/get.md): Endpoint that is inexpensive and can be used to determine things like: - The API is "up" or some other status - The request has valid authentication or not - What version of the software is running - If there are any ongoing notices or issues reported - The oldest API version supported - The newest… - [Introduction](https://docs.shipstream.io/merchant-api/introduction.md): Learn the basics of using the Merchant API. - [Authentication](https://docs.shipstream.io/merchant-api/authentication.md): Learn about the authentication methods for the Merchant API. - [Rate Limits](https://docs.shipstream.io/merchant-api/rate-limits.md): Understand the rate and concurrency limits enforced on the Merchant API. - [Search Filters](https://docs.shipstream.io/merchant-api/search-filters.md) - [Search Options](https://docs.shipstream.io/merchant-api/search-options.md) - [Webhook Topics](https://docs.shipstream.io/merchant-api/webhook-topics.md) - [Import Formats](https://docs.shipstream.io/merchant-api/import-formats.md) - [Shipping Methods](https://docs.shipstream.io/merchant-api/shipping-methods.md) - [Units of Measure](https://docs.shipstream.io/merchant-api/units-of-measure.md) - [Order](https://docs.shipstream.io/merchant-api/order.md) - [Shipment](https://docs.shipstream.io/merchant-api/shipment.md) - [Package](https://docs.shipstream.io/merchant-api/shipment-package.md) - [Rating](https://docs.shipstream.io/merchant-api/rating.md) - [Retailers](https://docs.shipstream.io/merchant-api/retailer.md) - [Retailer Custom Fields](https://docs.shipstream.io/merchant-api/retailer-custom-field.md) - [Order Custom Fields](https://docs.shipstream.io/merchant-api/order-custom-field.md) - [Packing Instructions](https://docs.shipstream.io/merchant-api/order-instruction.md) - [Shipment Custom Fields](https://docs.shipstream.io/merchant-api/shipment-custom-field.md) - [Third Party Billing](https://docs.shipstream.io/merchant-api/third-party-billing-group.md) - [Delivery](https://docs.shipstream.io/merchant-api/delivery.md) - [Delivery Label](https://docs.shipstream.io/merchant-api/delivery-label.md) - [Inventory](https://docs.shipstream.io/merchant-api/inventory.md) - [Product](https://docs.shipstream.io/merchant-api/product.md) - [Bill of Materials](https://docs.shipstream.io/merchant-api/bom.md) - [Product Media](https://docs.shipstream.io/merchant-api/product-media.md) - [Enumerations](https://docs.shipstream.io/merchant-api/enumeration.md) - [Stock Movements](https://docs.shipstream.io/merchant-api/stock-movement.md) - [Warehouse](https://docs.shipstream.io/merchant-api/warehouse.md) - [Brand](https://docs.shipstream.io/merchant-api/brand.md) - [Webhook](https://docs.shipstream.io/merchant-api/webhook.md) - [Import](https://docs.shipstream.io/merchant-api/import.md) ## OpenAPI Specs - [openapi](https://docs.shipstream.io/global-api/openapi.json) ## Optional - [Knowledge Base](https://help.shipstream.io) - [Release Notes](https://help.shipstream.io/article/fzz2g8rxhs-release-notes-overview) - [Warehouse Designer](https://flow.shipstream.io)