Files
cfw-autumn/apps/docs/api-reference-generator/core/track.mdx
2026-05-27 17:09:44 +01:00

53 lines
1.2 KiB
Plaintext

---
title: "Track Usage"
openapi: "openapi POST /v1/balances.track"
---
import { DynamicParamField } from "/snippets/dynamic-param-field.jsx";
import { DynamicResponseField } from "/snippets/dynamic-response-field.jsx";
import { DynamicResponseExample } from "/snippets/dynamic-response-example.jsx";
<Note>
Track records usage events to decrement a customer's balance. Use this to meter feature consumption like API calls, messages sent, or credits used.
</Note>
### Common Use Cases
<CodeGroup>
```typescript Track single usage
await autumn.track({
customerId: "cus_123",
featureId: "ai_messages",
value: 1
});
```
```typescript Track with idempotency
await autumn.track({
customerId: "cus_123",
featureId: "api_calls",
value: 1,
idempotencyKey: "request_abc123" // Prevents duplicate tracking on retry
});
```
```typescript Credit balance (negative value)
await autumn.track({
customerId: "cus_123",
featureId: "seats",
value: -1 // Increases balance when removing a seat
});
```
```typescript Async (fire-and-forget)
await autumn.track({
customerId: "cus_123",
featureId: "ai_messages",
value: 1,
async: true // Returns 202 immediately; usage processed in the background
});
```
</CodeGroup>