---
title: "Get Usage Event"
method: GET
path: "/api/v1/usage-events/{id}"
tags: ["Usage Events"]
---

# Get Usage Event

`GET /api/v1/usage-events/{id}`

## Path parameters

- `id` string, required

## Response `200`

Successful response

- object
  - `usageEvent` UsageEventClientSelectSchema, required
    - `id` string, required
    - `createdAt` integer, required — Epoch milliseconds.
    - `updatedAt` integer, required — Epoch milliseconds.
    - `livemode` boolean, required
    - `customerId` string, required
    - `subscriptionId` string, required
    - `usageMeterId` string, required
    - `billingPeriodId` string, nullable — The billing period the usage belongs to. If the usage occurs in a date that is outside of the current billing period, the usage will still be attached to the current billing peirod.
    - `amount` integer, required
    - `usageDate` integer, required — The date the usage occurred. If the usage occurs in a date that is outside of the current billing period, the usage will still be attached to the current billing period. Epoch milliseconds.
    - `transactionId` string, required — A unique identifier for the transaction. This is used to prevent duplicate usage events from being created.
    - `priceId` string, nullable, required
    - `properties` object, nullable — Properties for the usage event. Only required when using the "count_distinct_properties" aggregation type.
    - `pricingModelId` string, required

## Other responses

- `400` — Invalid input data
- `401` — Authorization not provided
- `403` — Insufficient access
- `404` — Not found
- `500` — Internal server error

## Changes

- **2026-01-11** `599bbd902d65` — 1 breaking, 1 info
  - response property `usageEvent/priceId` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - added the required property `usageEvent/pricingModelId` to the response with the `200` status
- **2025-11-25** `71d495f9b7d8` — 2 breaking
  - response property `usageEvent/properties` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - removed 'propertyNames' constraint from the `usageEvent/properties` response property for the status `200`
- **2025-10-18** `a1eeb4fac4d6` — 8 breaking, 8 info
  - the response property `usageEvent/billingPeriodId` became optional for the status `200`
  - the response property `usageEvent/properties` became optional for the status `200`
  - response property `usageEvent/billingPeriodId` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - the `usageEvent/createdAt` response's property type/format changed from `string`/`date-time` to `integer`/`` for status `200`
  - …12 more
- …earlier changes not shown

[Full history](https://skmtc.dev/flowglad/apis/flowglad-api/changes/api/v1/usage-events/:id/get.md)

---

[API](https://skmtc.dev/flowglad/apis/flowglad-api.md) · [All operations](https://skmtc.dev/flowglad/apis/flowglad-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/flowglad/flowglad-api/revisions/06c4dd78e137/schema)
