Skip to main content

ShipHero API Endpoints

The ShipHero GraphQL API operations the integration calls for products, kits, sales orders, inventory, and shipments.

Portal Info

ShipHero is administered through the ShipHero web application at https://app.shiphero.com. API access and developer documentation are available at the ShipHero Developer site.

API Endpoints

ShipHero exposes a GraphQL public API. The integration sends every product, kit, order, inventory, and shipment operation to a single GraphQL endpoint, distinguished by the GraphQL operation (query or mutation) in the request body:

POST [Base URL]/graphql

The Base URL is the ShipHero public API URL configured on the subscription (for example, https://public-api.shiphero.com). Each operation below is sent to that one endpoint; the operation name identifies what it does.

Table of Contents

  • Sales Order Endpoints

  • Product Endpoints

  • Product Kit Endpoints

  • Warehouse Product (Inventory) Endpoints

  • Shipment Endpoints

  • Authorization Endpoint

Sales Order Endpoints

Create an Order (POST)

POST [Base URL]/graphql
  • Operation: order_create (mutation)

  • Key fields: order number, shop name, shipping and billing address, and line items (SKU, quantity, price). Returns the new ShipHero order identifier.

Update an Order (POST)

POST [Base URL]/graphql
  • Operation: order_update (mutation)

  • Key fields: the ShipHero order identifier and the order header fields to update.

Add Order Line Items (POST)

POST [Base URL]/graphql
  • Operation: order_add_line_items (mutation)

  • Key fields: the order identifier and the line items to add (SKU, quantity, price). Line items are sent in batches for large orders.

Update Order Line Items (POST)

POST [Base URL]/graphql
  • Operation: order_update_line_items (mutation)

  • Key fields: the order identifier and the line items to update.

Get an Order (POST)

POST [Base URL]/graphql
  • Operation: order (query)

  • Key fields: retrieves an order and its line items by identifier, used to locate and link existing orders.

Product Endpoints

Create a Product (POST)

POST [Base URL]/graphql
  • Operation: product_create (mutation)

  • Key fields: SKU, name, barcode, dimensions, and warehouse product details (price, value, customs value, warehouse). Product variants are created as products.

Update a Product (POST)

POST [Base URL]/graphql
  • Operation: product_update (mutation)

  • Key fields: SKU (used to identify the product) and the product fields to update.

Get a Product by SKU (POST)

POST [Base URL]/graphql
  • Operation: products (query)

  • Key fields: finds a product by SKU, used to match and link products before creating orders, kits, or inventory.

Product Kit Endpoints

Build a Kit (POST)

POST [Base URL]/graphql
  • Operation: kit_build (mutation)

  • Key fields: the kit product's SKU and its component products (SKU and quantity).

Remove Kit Components (POST)

POST [Base URL]/graphql
  • Operation: kit_remove_components (mutation)

  • Key fields: the kit product's SKU and the components to remove. Used to rebuild a kit's components on each transfer.

Warehouse Product (Inventory) Endpoints

Get Warehouse Product Inventory (POST)

POST [Base URL]/graphql
  • Operation: warehouse_products (query)

  • Key fields: retrieves a product's or variant's on-hand, available, allocated, backorder, and non-sellable quantities by warehouse.

Update Warehouse Product (POST)

POST [Base URL]/graphql
  • Operation: warehouse_product_update (mutation)

  • Key fields: the warehouse product's price, value, customs value, and warehouse identifier.

Shipment Endpoints

Get Shipments (POST)

POST [Base URL]/graphql
  • Operation: shipments (query)

  • Key fields: retrieves a shipment and its shipping label details — tracking number, carrier, cost, and shipped line items — for an order.

Authorization Endpoint

ShipHero uses token-based authentication. The integration exchanges the configured username and password for an access token and refresh token at the authorization endpoint, then sends the access token with each GraphQL request:

POST [Base URL]/auth/token

For details on API access and authentication, see the ShipHero Developer documentation.

Related Documents

External References

Did this answer your question?