> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.ordergroove.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.ordergroove.com/_mcp/server.

# General FAQ

## Is Ordergroove a fully API-based platform?

All subscription integration touchpoints — with the exception of Product catalog updates, which are uploaded in an offline feed via SFTP — are powered by our API.

The remaining nuance belongs to Subscription Enrollment actions, which are carried out via API calls to the Purchase Post endpoint for customers who choose to host their frontend content, or automatically by the Ordergroove system for customers who tag Ordergroove's javascript.

***

## Should I read the API response status codes exclusively, or rely on the error messages?

We recommend you build your retry logic based solely on the API status codes (`400`, `401`, `403`, etc.). The accompanying error messages are human-readable and subject to change and thus not appropriate for use in error handling. These messages can be logged and used for troubleshooting.

***

## What value should I set for API timeout intervals?

The Service Level Agreement for most of our APIs is 1 second, but we recommend a 3-second interval to be safe. Visit the [API reference](/reference) for more detail about which API responses warrant a retry and which fail permanently.

***

## Why do some of Ordergroove's APIs have an authorization header, whereas others have HMAC auth in the URL parameters or the request body?

Ordergroove's older suite of APIs (those at `api.ordergroove.com`, as well as some at `sc.ordergroove.com`) do not have authorization headers, instead passing in authentication in the body of the request, or via URL parameters in rare instances. Our newer APIs (those at `restapi.ordergroove.com`, and some at `sc.ordergroove.com`) have an HMAC auth header.