ShipHero GraphQL Public API
For developers building solutions and integrations with ShipHero, our API provides access to a wide range of platform data and features. It’s built on GraphQL, as we focus on offering the most flexible and efficient way to consume your data. Different clients have different implementations and needs, so depending on what you’re building, you may need to fetch data with varying levels of detail. GraphQL is a perfect fit for this, giving you the power to decide exactly how much data you want at any time.
Latest Changes
2026 April 22nd: Added the ad_hoc_charges query to retrieve ad-hoc charges by ID, and the bill_update_ad_hoc_charge mutation to modify existing ad-hoc charges on a customer’s 3PL billing.
2026 April 22nd: Added the item_locations query to retrieve item-bin records with rich filtering and cursor-based pagination. Supports filters like sku, location_name, location_name_prefix, has_inventory, pickable, sellable, location_type_id, and updated_from/updated_to for incremental sync. The response includes location, location_type, product, and expiration_lot fields.
2026 April 21st: Added cycle count queries and mutations: cycle_count and cycle_counts queries for retrieving cycle count batches, plus cycle_count_items_create, cycle_count_locations_create, and cycle_count_recount_create mutations for creating item-based, location-based, and recount cycle counts. See the Cycle Counts flow for detailed usage.
2026 April 20th: Added work_order_add_fees, work_order_update_fees, and work_order_remove_fees mutations for managing ad-hoc fees on work orders. 3PL users can now add, update, and remove fees through the Public API. Fees cannot be modified on completed or canceled work orders.
2026 April 17th: Renamed the clear_tote mutation to tote_clear. tote_clear is now the preferred mutation name for clearing tote picks, while clear_tote remains available as a deprecated legacy alias for backwards compatibility. The mutation still supports optional return_inventory.
2026 April 16th: Added the tote_create and tote_update mutations to create and rename totes. tote_create can optionally return a barcode PDF URL when print_barcodes is set to true, and both mutations support 3PL child-account flows via customer_account_id.