Ordergroove built a REST API that uses intuitive, resource-oriented URLs. Send us JSON in your requests, get JSON back in our responses, and rely on standard HTTP conventions for status codes, authentication, and verbs.
Base URL
API requests use different base URLs depending on the endpoint and environment:
Primary URL
- Production:
https://restapi.ordergroove.com - Staging:
https://staging.restapi.ordergroove.com
Unless otherwise specified in the documentation, all endpoints use the restapi subdomain. Note that these APIs are rate limited—see the Rate Limits page for details.
Subscription Creation URL
Some endpoints for subscription creation use alternate base URLs:
Subscription Creation API
- Production:
https://sc.ordergroove.com - Staging:
https://staging.sc.ordergroove.com
Legacy URL
If you're currently using the legacy API at https://api.ordergroove.com, please note that these URLs are not interchangeable with the current API. We recommend upgrading your integration to use the endpoints documented here.
Data Structure
Subscriptions in Ordergroove are tied to items, not orders:
Core Data Objects
Our data model centers on four core objects: Customer, Subscription, Item, and Order. This diagram illustrates how subscriptions generate items and orders over time. Note that Ordergroove only creates the next upcoming order, subsequent orders are created as necessary.
For complete details, see Data Model at a Glance.
Response Codes
The Ordergroove API returns JSON responses. All responses include standard HTTP status codes. Codes in the 2xx range indicate success, while codes in the 4xx and 5xx range indicate client errors.
Success Codes:
- 200 OK - Request succeeded
- 201 Created - Resource created successfully
- 204 No Content - Request succeeded with no response body
Error Codes:
- 400 Bad Request - Invalid request parameters
- 401 Unauthorized - Invalid or missing API key
- 403 Access Denied - Insufficient permissions
- 404 Not Found - Resource not found
- 423 Resource is currently in use. Please try again shortly. - Happens when concurrent requests are made that attempt to perform operation on the same resource
- 429 Too Many Requests - Rate limit exceeded
- 500 Internal Server Error
- 502 Bad Gateway
- 503 Service Unavailable
