Menu
Platform
AI
App store purchases
Credits
Database
Flags
Generated Assets
Jobs and cron
Localization
Monitoring
Notifications
Payments
Sandboxes
Webhooks
Getting Started
Authentication
KV Store
Deploy & Infrastructure
Reference
Settle an usage reservation
Settles a reservation with what was used; the unused part returns to headroom.
Settles a reservation with what was used; the unused part returns to headroom. A settle after expiry still records the usage.
- Path
POST https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/usage_reservations/usage-reservation:settle - Scope
billing:metering:write - Effect
write— a successful call changes state. - Collection usage_reservations
#Request
| Field | Type | What it is |
|---|---|---|
name | string | The reservation to settle. Required. |
quantity_used | int64 | What was used, in the meter's base unit; 0 to the granted quantity, or more after expiry (the work happened). Required. |
occurred_time | timestamp | When the work happened; now when absent. |
#Response
| Field | Type | What it is |
|---|---|---|
name | string | orgs/{org}/projects/{project}/envs/{env}/usage_events/{usage_event}. |
uid | string | uevt_<cell><ulid>; never reused. Output only. |
meta | ResourceMeta | Resource metadata. |
subject | Subject | Who used it. Required. |
subject_proof | string | As on UsageReservation. Required. |
actor_proof | string | As on UsageReservation. |
meter | string | The meter's lookup key. Required. |
quantity | int64 | How much, in the meter's base unit. Required. |
occurred_time | timestamp | When the work happened. Required. |
amount_nano | string | The rated amount, nano-minor, a decimal string. Output only. |
usage_reservation | string | The reservation it settled, when it did. Output only. |
late | bool | Settled after the reservation expired; the usage is still recorded. Output only. |
#ResourceMeta
| Field | Type | What it is |
|---|---|---|
generation | int64 | Increases by one on every change to spec. Output only. |
etag | string | Strong ETag (AIP-154): changes on any change to spec, status, or metadata. Send it back as If-Match or etag to make Update and Delete conditional; a mismatch fails with ABORTED / 409 ETAG_MISMATCH. Output only. |
create_time | timestamp | When the Resource was created. Output only. |
update_time | timestamp | When the Resource last changed. Output only. |
delete_time | timestamp | Set while the Resource is being deleted. Output only. |
labels | map<string, string> | Caller-writable, indexed labels (AIP-122 label rules). |
annotations | map<string, string> | Caller-writable, unindexed annotations. |
display_name | string | Caller-writable human-readable name. |
creator | string | The principal that created the Resource. Output only. |
#Subject
| Field | Type | What it is |
|---|---|---|
end_user | string | An end user's id (Sylphx Auth, or the app's own OIDC issuer). One of the kind group. |
customer_organization | string | A customer organization's id. One of the kind group. |
#Errors
UNAUTHENTICATED— No valid key or token was presented.PERMISSION_DENIED— The key lacks the method's permission.RESOURCE_NOT_FOUND— The named Resource does not exist or is not visible.INVALID_FIELD— A field failed validation.INVALID_STATE— The Resource is in a state that forbids the call.IDEMPOTENCY_KEY_REUSED— An Idempotency-Key was reused with another body.IDEMPOTENCY_IN_PROGRESS— The first call with this Idempotency-Key is still running.
Every error arrives in the body Errors describes.
#Examples
curl -X POST "https://api.sylphx.com/v1/orgs/acme/projects/shop/envs/production/usage_reservations/usage-reservation:settle" \
-H "Authorization: Bearer $SYLPHX_API_KEY" \
-H "Content-Type: application/json" \
-d '{"quantity_used":1}'