Changelog
Every change to the Grasshopper API. Subscribe to the RSS feed or check back monthly.
Two new tracking events for returns lifecycle
Added RETURN_INFORMATION_CHANGED (event 204) and clarified CUSTOMER_CONTACT_REQUEST (event 202) in the reference docs. No breaking changes.
Bulk order creation
You can now create up to 50 orders in a single request via POST /api/orders/bulk/. Each order is validated independently; partial successes return a per-order status array.
Webhook delivery retry semantics
Improved retry behavior for webhook deliveries. Failed deliveries now retry on an exponential backoff schedule for up to 24 hours instead of being abandoned after 3 attempts.
POD auto-attachment via webhook
POD assets now appear in the order.assets[] array within seconds of delivery completion, accompanied by the ELECTRONIC_POD_SENT (176) tracking event.
Removed deprecated customer.name field
The legacy combined customer.name field has been removed in favor of customer.first_name + customer.last_name. Migration period ended; all integrations should be on the new fields.
Webhook signature verification
All outbound webhooks now include an X-Grasshopper-Signature header containing an HMAC-SHA256 signature of the payload. See Verifying webhooks.
Shipping calculator
New POST /api/shipping/calculate/ endpoint returns cost and delivery time estimates without creating an order.