The store behind the key
const url = 'https://api.octaneai.com/v1/store';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.octaneai.com/v1/store \ --header 'Authorization: Bearer <token>'Authorizations
Section titled “Authorizations”Responses
Section titled “Responses”The store behind the key: who it is, its currency and timezone, its plan class, limits, the key’s scopes and credit usage.
object
object
Whether overage charges are permitted past the limit
Credits consumed in the current billing cycle
object
Seconds before a cached analytics answer may refresh
The store-wide bucket is this many times the key bucket
Requests a key may burst before its bucket is full
Milliseconds an export job rests between pages of the store’s data
Sustained requests per second per key
Maximum webhook endpoints for the store
Sustained webhook sends per second per endpoint
Plus or enterprise; picks the limit table
The scopes this key carries
Example
{ "credits": { "limit": 50000, "overages_enabled": true, "threshold": 60000, "used": 12450 }, "currency": "USD", "limits": { "analytics_soft_ttl_seconds": 60, "bot_multiplier": 3, "capacity": 72, "export_page_pause_ms": 100, "leak_per_second": 12, "webhook_endpoints": 5, "webhook_sends_per_second": 50 }, "name": "Bench store", "plan_class": "plus", "scopes": [ "analytics:read", "quizzes:read" ], "shop_domain": "bench-store.myshopify.com", "timezone": "America/New_York"}The key is missing, malformed, revoked or expired.
The body of every non-2xx response.
object
What went wrong, for people
object
The input that failed, as a dotted path (body.label, query.from)
Why it failed
The same value as the Request-Id header; quote it to support
The HTTP status of the response
The machine-readable error code
A stable URI naming the error, on this API’s public host
Example
{ "detail": "The API key is missing, malformed, revoked or expired", "request_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7", "status": 401, "title": "invalid_api_key", "type": "https://api.octaneai.com/errors/invalid_api_key"}Headers
Section titled “Headers”Example
BearerThe store’s plan has no API access, or the key lacks the scope.
The body of every non-2xx response.
object
What went wrong, for people
object
The input that failed, as a dotted path (body.label, query.from)
Why it failed
The same value as the Request-Id header; quote it to support
The HTTP status of the response
The machine-readable error code
A stable URI naming the error, on this API’s public host
Examples
{ "detail": "The API key does not carry the scope this route needs", "request_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7", "required": [ "quizzes:read" ], "status": 403, "title": "insufficient_scope", "type": "https://api.octaneai.com/errors/insufficient_scope"}{ "detail": "The merchant API is available on the Plus and Enterprise plans", "request_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7", "status": 403, "title": "plan_required", "type": "https://api.octaneai.com/errors/plan_required"}The key’s or the store’s bucket is full; Retry-After says when to try again.
The body of every non-2xx response.
object
What went wrong, for people
object
The input that failed, as a dotted path (body.label, query.from)
Why it failed
The same value as the Request-Id header; quote it to support
The HTTP status of the response
The machine-readable error code
A stable URI naming the error, on this API’s public host
Example
{ "detail": "Too many requests", "request_id": "7c9e6679-7425-40de-944b-e07fc1f90ae7", "retry_after": 1, "status": 429, "title": "rate_limited", "type": "https://api.octaneai.com/errors/rate_limited"}