Rate limits & errors

Rate limits

Each endpoint is rate-limited. Defaults:

EndpointLimitCounted per
POST /api/flake600 / minuteVisitor IP
POST /api/v1/events1,200 / minuteAPI key
POST /api/identify120 / minuteAPI key
GET /api/v1/stats/*600 / minuteAPI key

Exceeding a limit returns 429 Too Many Requests. Spread bursts out or batch where you can.

These are the current SnowAnalytics service defaults. If your integration needs higher limits, contact [email protected].

Error format

The authenticated endpoints return a JSON error envelope:

{
  "status": "error",
  "error": {
    "code": 400,
    "message": "Invalid event name"
  }
}

Common status codes across the APIs:

StatusMeaning
400 Bad RequestThe request was malformed or a field failed validation.
401 UnauthorizedMissing or invalid API key.
403 ForbiddenThe key lacks the scope the endpoint needs, or the site is locked.
404 Not FoundNo matching site (for /api/flake).
429 Too Many RequestsRate limit exceeded.

/api/flake responds with status codes only (204 on success, with no body), since it's called by the browser snippet.

On this page