The API
Connect a custom store or system with the FetchApp v3 API. Find your credentials, account address, order endpoints and the full API reference.
The FetchApp v3 API lets a developer connect your store or another system to FetchApp. Use it to send paid orders, manage products and license keys, and check download activity.
If you are setting up Shopify or PayPal, start with the quickstart; you do not need to write code for those connections. For WooCommerce, review the plugin and API options.
The rest of this guide is for the developer building your connection.
Finding the full reference
Sign in at https://<handle>.fetchapp.com and open the API section. The complete v3
reference lists the endpoints, parameters and responses available for your account.
Your handle is the name before .fetchapp.com in your account address. If you need help
finding it, see sign in.
Your API address
Send requests to your own account’s address:
https://<handle>.fetchapp.com/api/v3/...
Replace <handle> with your account handle. There is no shared api.fetchapp.com
endpoint; the account-specific host is required.
Credentials
See pricing for plans that include API access. Free accounts do not include it. On an eligible plan, generate your credentials in the FetchApp admin.
Use HTTP Basic authentication, with your API key as the username and your API token as
the password. If a request returns 401 Unauthorized, check your credentials, account
address and plan. Keep the token private and make requests from your server rather than
publishing credentials in browser code.
Creating and finding orders
When your checkout confirms payment, send the order to:
POST https://<handle>.fetchapp.com/api/v3/orders
Include your order ID, the customer’s email address and the product SKUs using the request format in your account’s API reference. A SKU is the product code that matches each order item to a FetchApp product.
FetchApp attaches the matching products’ files and available license keys, then sends the delivery email. To retrieve the order using your own order ID:
GET https://<handle>.fetchapp.com/api/v3/vorders/<your-order-id>
This lets your system look up an order without storing a separate FetchApp order ID.
Before sending live orders
- Match SKUs exactly, including capitals and spaces, and attach files to the products. Unmatched lines are skipped without a matching error. Check the created order’s items against the items you submitted.
- Check available license keys. FetchApp assigns one key per unit sold. An empty pool delivers the file without a key and does not generate a warning. See license keys.
- Keep large requests in batches. Request-size limits apply to bulk operations too.
- Plan email volume. Delivery emails have a daily allowance per account, with lower allowances for new accounts. Sends above that allowance are not retried automatically. Contact support before a large batch that will email customers.
Review limits, then send a test order and check its products, delivery email and download links before enabling the connection for customers.
Help with your connection
Contact support with what you are connecting, the endpoint you are using and any error response. Do not include your API token. We can help you find the relevant part of the reference and check your account setup.