Featherlane AI
ReferenceHTTP API

Budget alerts

GET
/v1/financial/budget-alerts

Response Body

application/json

application/json

curl -X GET "https://example.com/v1/financial/budget-alerts"
{  "configs": [    {      "created_at": "string",      "enabled": true,      "id": "string",      "meter": "actions",      "name": "string",      "principal_id": "string",      "threshold_type": "percent",      "threshold_value": 0,      "updated_at": "string",      "webhook_url": "string",      "window": "day",      "workspace_id": "string"    }  ]}
POST
/v1/financial/budget-alerts

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/financial/budget-alerts" \  -H "Content-Type: application/json" \  -d '{    "name": "string",    "threshold_type": "percent",    "threshold_value": 0,    "window": "day"  }'
{  "created_at": "string",  "enabled": true,  "id": "string",  "meter": "actions",  "name": "string",  "principal_id": "string",  "threshold_type": "percent",  "threshold_value": 0,  "updated_at": "string",  "webhook_url": "string",  "window": "day",  "workspace_id": "string"}
PATCH
/v1/financial/budget-alerts/{id}

Path Parameters

id*string

Budget alert config id

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Partial update; absent fields are left unchanged. The nullable fields (principal_id, webhook_url) cannot be cleared through this shape — recreate the config to widen its scope.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/v1/financial/budget-alerts/string" \  -H "Content-Type: application/json" \  -d '{}'
{  "created_at": "string",  "enabled": true,  "id": "string",  "meter": "actions",  "name": "string",  "principal_id": "string",  "threshold_type": "percent",  "threshold_value": 0,  "updated_at": "string",  "webhook_url": "string",  "window": "day",  "workspace_id": "string"}
DELETE
/v1/financial/budget-alerts/{id}

Path Parameters

id*string

Budget alert config id

Response Body

application/json

application/json

application/json

curl -X DELETE "https://example.com/v1/financial/budget-alerts/string"
Empty
GET
/v1/financial/budget-alerts/{id}/firings

Path Parameters

id*string

Budget alert config id

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/v1/financial/budget-alerts/string/firings"
{  "firings": [    {      "cap_minor": 0,      "config_id": "string",      "currency": "string",      "fired_at": "string",      "id": "string",      "meter": "actions",      "payload": null,      "principal_id": "string",      "spent_minor": 0,      "window_start": "string",      "workspace_id": "string"    }  ]}