"Best analytics tool I've used in 14 years"

Connect Lemon Squeezy

POST https://datafa.st/api/v1/admin/websites/{websiteId}/integrations/lemonsqueezy

Connect Lemon Squeezy with an API key and store ID. Revenue imports automatically for attribution reporting.

Request

Path parameters

websiteId
string
Website ObjectId. From List websites (_id field). Example: 665f0b3c4d2e1a0012345678.

Body parameters

lemonsqueezyApiKey
string
required
Lemon Squeezy API key from Settings → API. Example: "eyJ...".
lemonsqueezyStoreId
string
required
Numeric store ID from Lemon Squeezy dashboard. Example: "12345".

Example request body

{
  "lemonsqueezyApiKey": "YOUR_API_KEY",
  "lemonsqueezyStoreId": "12345"
}

Response

Returns a JSON object with status: "success" and endpoint-specific fields in data.

Response fields

data[].message
string
Human-readable confirmation or status message for the operation.
data[].currency
string
Currency code for money values, such as USD or EUR.

Authentication

Use a dft_ account token with settings:write.
A df_ website API key for the same website can also call this route when the path websiteId matches the key's website. Write access with a df_ key is capped at member level — owner-only actions such as team management require a dft_ token and owner role.

Errors

See API errors for the standard error envelope, auth failures, validation errors, permission errors, and rate limits.

✍️ Something missing? Suggest features.

🤖 AI agent or LLM? Read this page as markdown

Example request
curl -X POST "https://datafa.st/api/v1/admin/websites/{websiteId}/integrations/lemonsqueezy" \
  -H "Authorization: Bearer dft_xxx" \
  -H "Content-Type: application/json" \
  -d '{"lemonsqueezyApiKey":"YOUR_API_KEY","lemonsqueezyStoreId":"YOUR_STORE_ID"}'
Success response
{
  "status": "success",
  "data": [{
    "message": "Lemon Squeezy connected successfully",
    "currency": "USD"
  }]
}