The v2/usage
REST API is designed to handle both setting a prorated gauge and incrementing a final value counter for a specific customer in Salesbricks.
To utilize this endpoint, ensure that you are using the v2/usage
API endpoint:https://api.salesbricks.com/api/v2/usage
Request: POST /v2/usage
Parameters
Field | Type | Required | Description |
---|
transaction_id | String | Yes | The unique identifier for this usage entry transaction. |
subscription_id | UUID | Yes | The ID of the Salesbricks subscription associated with the customer. |
brick_id | UUID | Yes | The ID of the associated Usage Brick. |
value | Integer | Yes | Required. This is the value to set for the Counter or Gauge (e.g., 1 ). |
time | DateTime | Yes | The timestamp indicating when the operation occurs in ISO 8601 format. |
properties | Dict | No | Additional properties as a JSON dictionary object (optional). |
Response
201 Created
- if the usage entry is successfully submitted.
400 Bad Request
- if validation fails or required fields are missing.
{
"message": "Usage entry submitted successfully."
}
Example: Setting a Prorated Gauge
POST /v2/usage
Content-Type: application/json
Authorization: Bearer <token>
{
"transaction_id": "12345",
"subscription_id": "00000000-0000-0000-0000-000000000000",
"brick_id": "00000000-0000-0000-0000-000000000000",
"value": 121,
"time": "2024-09-16T10:15:30Z"
}
Example: Incrementing a Final Value Counter
POST /v2/usage
Content-Type: application/json
Authorization: Bearer <token>
{
"transaction_id": "54321",
"subscription_id": "00000000-0000-0000-0000-000000000000",
"brick_id": "00000000-0000-0000-0000-000000000000",
"value": 1,
"time": "2024-09-16T10:15:30Z",
"properties": {
"source_worker": "8168cf7f-65e0-4f9a-aeb4-3e013ff71f89",
"region": "us-east-1"
}
}
DELETE /v2/usage - Deleting a Usage Entry
To delete a usage entry, provide the transaction_id
in the request body.
Parameters
Field | Type | Required | Description |
---|
transaction_id | String | Yes | The unique identifier for the usage entry. |
Response
200 OK
- if the usage entry is successfully deleted.
404 Not Found
- if the usage entry does not exist.
{
"message": "Usage entry deleted successfully."
}
PATCH /v2/usage - Updating a Usage Entry
To update a usage entry, provide the transaction_id
and the fields to be updated.
Parameters
Field | Type | Required | Description |
---|
transaction_id | String | Yes | The unique identifier for the usage entry. |
value | Integer | Yes | Update the usage value. |
properties | Dict | Optional | Update the properties dictionary (if applicable). |
Response
200 OK
- if the usage entry is successfully updated.
400 Bad Request
- if validation fails or required fields are missing.
404 Not Found
- if the usage entry does not exist.
{
"message": "Usage entry updated successfully."
}