curl --request GET \
--url https://api.eventory.ai/usage \
--header 'apikey: <api-key>'import requests
url = "https://api.eventory.ai/usage"
headers = {"apikey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {apikey: '<api-key>'}};
fetch('https://api.eventory.ai/usage', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"customer_id": "cus_abc123",
"plan": "basic",
"plan_ids": {
"subscription_id": "sub_123",
"price_id": "price_123",
"product_id": "prod_123"
},
"status": "active",
"usage_status": "ok",
"cancel_at_period_end": false,
"canceled_at": null,
"trial_end": null,
"unit": "credits",
"as_of": "2026-06-12T09:15:00Z",
"period": {
"start": "2026-06-01T00:00:00Z",
"end": "2026-07-01T00:00:00Z",
"days_remaining": 19,
"elapsed_fraction": 0.3771
},
"credits": {
"included": 5000,
"used": 1234,
"remaining": 3766,
"overage": 0,
"percent_used": 24.68,
"projected_used": 3272,
"hard_cap": 6000,
"in_overage": false
}
}Usage
Returns your plan, billing period, and credit usage, fetched live from billing on every call. Any valid key may call this endpoint, whatever routes it is granted, so it is also the safest way to test a key.
credits.included is the quota bundled into your plan; crossing it bills
overage rather than blocking. credits.hard_cap is where the gateway stops
serving with 402 limit_reached. usage_status is a single field to
switch on.
Cost: free.
curl --request GET \
--url https://api.eventory.ai/usage \
--header 'apikey: <api-key>'import requests
url = "https://api.eventory.ai/usage"
headers = {"apikey": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {apikey: '<api-key>'}};
fetch('https://api.eventory.ai/usage', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"customer_id": "cus_abc123",
"plan": "basic",
"plan_ids": {
"subscription_id": "sub_123",
"price_id": "price_123",
"product_id": "prod_123"
},
"status": "active",
"usage_status": "ok",
"cancel_at_period_end": false,
"canceled_at": null,
"trial_end": null,
"unit": "credits",
"as_of": "2026-06-12T09:15:00Z",
"period": {
"start": "2026-06-01T00:00:00Z",
"end": "2026-07-01T00:00:00Z",
"days_remaining": 19,
"elapsed_fraction": 0.3771
},
"credits": {
"included": 5000,
"used": 1234,
"remaining": 3766,
"overage": 0,
"percent_used": 24.68,
"projected_used": 3272,
"hard_cap": 6000,
"in_overage": false
}
}Authorizations
Your Eventory API key. Sent as the apikey request header.
Response
Usage report.
Plan name. null without an active subscription.
Show child attributes
Show child attributes
Subscription status. Only active and trialing are served by the gateway; none means no subscription.
"active"
approaching_limit from 80% of included; over_included once overage starts; at_hard_cap when the gateway is refusing requests.
ok, approaching_limit, over_included, at_hard_cap, none Billing unit label
Show child attributes
Show child attributes
Show child attributes
Show child attributes