Retrieve a customer-meter aggregate
Returns a single customer-meter aggregate for the specified customer + meter pair. Returns 404 only if the meter itself does not exist on the merchant — if the meter exists but the customer has zero events, the response returns an aggregate with `total_quantity: 0`, `event_count: 0`, `last_event_at: null`. --- **Related endpoints** - `GET /customer-meters` — List a customer's meter usage **Common errors** - `401 authentication_error` — missing, invalid, expired, or revoked credential. Codes: `authentication_failed`, `invalid_api_key`, `expired_api_key`, `api_key_revoked`, `session_invalid`, `merchant_required`. Carries a `WWW-Authenticate: Bearer` challenge. - `404 resource_missing` — the referenced resource does not exist or is not visible to your key.
Returns a single customer-meter aggregate for the specified customer + meter pair. Returns 404 only if the meter itself does not exist on the merchant — if the meter exists but the customer has zero events, the response returns an aggregate with total_quantity: 0, event_count: 0, last_event_at: null.
Related endpoints
GET /customer-meters— List a customer's meter usage
Common errors
401 authentication_error— missing, invalid, expired, or revoked credential. Codes:authentication_failed,invalid_api_key,expired_api_key,api_key_revoked,session_invalid,merchant_required. Carries aWWW-Authenticate: Bearerchallenge.404 resource_missing— the referenced resource does not exist or is not visible to your key.
Your RevKeen merchant API key. Create and manage keys in Dashboard → Settings → Developer. Use rk_sandbox_* for staging/test and rk_live_* for production. The same key may be sent as Authorization: Bearer <key> if that suits your HTTP client better. A missing, invalid, expired, or revoked key returns 401 with a WWW-Authenticate: Bearer challenge; a valid key without the required scope returns 403.
In: header
Path Parameters
Customer UUID
uuidMeter UUID
uuidResponse Body
application/json
application/json
application/json
application/json
curl "https://api.revkeen.com/v2/customer-meters/00000000-0000-0000-0000-000000000000/00000000-0000-0000-0000-000000000000" \
-H "x-api-key: $REVKEEN_API_KEY"{ "data": { "object": "customer_meter", "customer_id": "160c0c4b-9966-4dc1-a916-8407eb10d74e", "meter_id": "1e13adc1-9ac9-453b-b100-17d2f2da2eb8", "meter_name": "string", "meter_event_name": "string", "aggregation": "string", "unit_name": "string", "total_quantity": 0, "event_count": 0, "last_event_at": "2019-08-24T14:15:22Z" }}Void a credit note POST
Void a credit note that has been issued but not yet fully applied. This is an accounting void — it reverses the credit without creating a new financial transaction. --- **Related endpoints** - `GET /credit_notes` — List credit notes - `POST /credit_notes` — Create a credit note - `GET /credit_notes/{id}` — Get credit note by ID - `GET /credit_notes/invoice/{invoice_id}/eligibility` — Check credit note eligibility for an invoice - `GET /credit_notes/transaction/{transaction_id}/reversal-eligibility` — Check reversal eligibility for a transaction - `GET /credit_notes/{id}/lines` — List line items on a credit note - `POST /credit_notes/preview` — Preview a credit note without creating it **Common errors** - `400 invalid_request` — malformed payload or failed validation. - `401 authentication_error` — missing, invalid, expired, or revoked credential. Codes: `authentication_failed`, `invalid_api_key`, `expired_api_key`, `api_key_revoked`, `session_invalid`, `merchant_required`. Carries a `WWW-Authenticate: Bearer` challenge. - `404 resource_missing` — the referenced resource does not exist or is not visible to your key. **Idempotency** Pass an `Idempotency-Key` header (UUID v4 recommended) to make retries safe. Keys are valid for 24 hours; see [the idempotency guide](/docs/fundamentals/idempotency).
List a customer's meter usage GET
Returns per-meter aggregates for a single customer. Requires a `customer_id` query parameter. For each meter the merchant has defined, the response includes the aggregate quantity (applying the meter's native aggregation function), the event count, and the most recent event timestamp. Use this to render a customer's current consumption snapshot in your own UI — for example, a usage dashboard showing "4,820 / 10,000 requests this period". --- **Related endpoints** - `GET /customer-meters/{customer_id}/{meter_id}` — Retrieve a customer-meter aggregate **Common errors** - `400 invalid_request` — malformed payload or failed validation. - `401 authentication_error` — missing, invalid, expired, or revoked credential. Codes: `authentication_failed`, `invalid_api_key`, `expired_api_key`, `api_key_revoked`, `session_invalid`, `merchant_required`. Carries a `WWW-Authenticate: Bearer` challenge. **Pagination** Offset-based with `limit` (default 25, max 100) and `offset`. The response `pagination` block includes `total` and `hasMore`. See [the pagination guide](/docs/fundamentals/pagination) for SDK auto-paging helpers.