FREDFRED docs

Authenticate your server with a FRED API key

Connect your server to your store's FRED account.

Published by FRED

Prepare the account

In the FRED dashboard, open Developers → API keys and create a key for your integration. Copy the secret displayed only once, then store it in your server's environment variables.

Your website calls your server; your server calls FRED with X-API-Key. The key must never be included in browser JavaScript or in a URL.

curl https://api.fredpod.com/v1/storefront/quotes/est_abc123 \
  -H "X-API-Key: $FRED_API_KEY"

Required permissions

FunctionKey permissions
Upload a file and request its pricefiles:write, quotes:write
Request a price for a saved productquotes:write
Read a quotequotes:read
Recalculate shippingquotes:write
Create and track ordersorders:write, orders:read
Read the preview and approve a model if neededfiles:read, files:write
Configure webhooks through the APIwebhooks:manage

A key can only access resources belonging to its account. If you use several brands, send X-Brand-Id with your requests to retain the store's context. Variants and products are prepared in the dashboard; using them in a quote does not require permission to modify products.

See the sandbox guide to create your store test environment and control simulations.

Testing, payment and going live

A test key isolates data and does not trigger real payments. Test webhooks may still be sent to the URL you configure. A result marked simulated is not a commitment to actual manufacturing.

To order in production, configure your brand, payment method and automatic authorisation limits in the dashboard. The quote's ordering_enabled field indicates whether ordering is available.

Revoke or replace a key in the dashboard. An expired or revoked key receives 401; a missing permission receives 403.

Errors and retries

Errors are application/problem+json objects. Use code for your application logic and retain request_id for support requests.

{
  "status": 409,
  "code": "price_limit_exceeded",
  "title": "Price exceeds the limit",
  "detail": "The delivered total exceeds max_total_cents. No charge or order was created.",
  "request_id": "req_abc123"
}

Creating quotes and orders requires Idempotency-Key (a maximum of 160 characters for storefront requests). Reuse the same key and content after a network error. The same key with different content is rejected with 422.

Was this page helpful?

On this page