Skip to main content

Public REST/JSON reference

Error Budget API

Define SLOs (target percentage + window in days + SLI query against your metric source), continuously compute the budget remaining, surface burn-rate over 1h/6h/24h windows, and project the date the budget will hit zero given the current burn rate. Page on fast-burn / slow-burn / budget-low / budget-exhausted thresholds. Part of the Logic Igniter Developer & DevOps bundle.

Access boundary

These examples describe public API calls only. Use the service output to review, score, summarize, analyze, or recommend; do not treat the API reference as permission for an assistant to write, send, publish, charge, schedule, notify, delete, or modify records.

Base URL

https://api.logicigniter.com

Auth

Authorization: Bearer YOUR_API_KEY

Version

OpenAPI 3.0.3 · 1.0.0

Operations rendered

15

Response models rendered

21

GET/api/v1/errorbudget/health

Service liveness

Liveness probe — returns 200 if the service is reachable.

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X GET "https://api.logicigniter.com/api/v1/errorbudget/health" \
  -H "Accept: application/json"

Responses

200

Service healthy

GET/api/v1/errorbudget/customers

List customers

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Parameters

NameInTypeNotes
page_sizequeryinteger
page_tokenquerystring

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X GET "https://api.logicigniter.com/api/v1/errorbudget/customers" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Responses

Page of customers

Missing or invalid API key.

POST/api/v1/errorbudget/customers

Provision a customer

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Request body (required)

Schema: CreateCustomerRequest

Sample JSON payload for evaluation.

{
  "email": "[email protected]",
  "name": "Example Inc."
}

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X POST "https://api.logicigniter.com/api/v1/errorbudget/customers" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{"email":"[email protected]","name":"Example Inc."}'

Responses

Customer created or returned

Invalid email or missing name

Missing or invalid API key.

GET/api/v1/errorbudget/customers/{id}

Get a customer by id

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Parameters

NameInTypeNotes
idrequiredpathstring (uuid)

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X GET "https://api.logicigniter.com/api/v1/errorbudget/customers/:id" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Responses

Customer record

Missing or invalid API key.

Customer not found

PUT/api/v1/errorbudget/customers/{id}

Update a customer

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Parameters

NameInTypeNotes
idrequiredpathstring (uuid)

Request body (required)

Schema: UpdateCustomerRequest

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X PUT "https://api.logicigniter.com/api/v1/errorbudget/customers/:id" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{}'

Responses

Updated customer

Invalid update

Missing or invalid API key.

Customer not found

GET/api/v1/errorbudget/slos

List SLOs

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X GET "https://api.logicigniter.com/api/v1/errorbudget/slos" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Responses

All defined SLOs for the workspace

Missing or invalid API key.

POST/api/v1/errorbudget/slos

Define an SLO

Create a new SLO with a target percentage, window in days, and an SLI query against your metric source (e.g. Prometheus, CloudWatch, Datadog). The query is evaluated continuously to compute budget consumption.

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Request body (required)

Schema: DefineSLORequest

Sample JSON payload for evaluation.

{
  "name": "checkout-availability",
  "target_pct": 99.9,
  "window_days": 30,
  "sli_query": "sum(rate(http_requests_total{path=\"/checkout\",code!~\"5..\"}[5m])) / sum(rate(http_requests_total{path=\"/checkout\"}[5m]))",
  "metric_source": "prometheus"
}

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X POST "https://api.logicigniter.com/api/v1/errorbudget/slos" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{"name":"checkout-availability","target_pct":99.9,"window_days":30,"sli_query":"sum(rate(http_requests_total{path=\"/checkout\",code!~\"5..\"}[5m])) / sum(rate(http_requests_total{path=\"/checkout\"}[5m]))","metric_source":"prometheus"}'

Responses

201SLO

SLO created

Invalid target_pct, window_days, or unparseable SLI query

Missing or invalid API key.

Endpoint requires an active subscription. Free tier covers 1 SLO with daily evaluation; paid plans unlock unlimited SLOs, sub-minute evaluation, and burn-rate alerting.

GET/api/v1/errorbudget/slos/{slo_id}

Get SLO detail

Returns the SLO with its current budget remaining and the three burn-rate windows (1h, 6h, 24h) — the same numbers your dashboard would show inline.

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Parameters

NameInTypeNotes
slo_idrequiredpathstring (uuid)

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X GET "https://api.logicigniter.com/api/v1/errorbudget/slos/:slo_id" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Responses

SLO detail

Missing or invalid API key.

SLO not found

GET/api/v1/errorbudget/slos/{slo_id}/budget

Live budget status

Returns the percentage of budget remaining and the absolute number of budgeted minutes consumed so far in the current window.

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Parameters

NameInTypeNotes
slo_idrequiredpathstring (uuid)

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X GET "https://api.logicigniter.com/api/v1/errorbudget/slos/:slo_id/budget" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Responses

Budget status

Missing or invalid API key.

SLO not found

GET/api/v1/errorbudget/slos/{slo_id}/budget/history

Budget history

Time-series of budget remaining and burn rate. Suitable for overlaying with a deploys/incidents annotation track.

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Parameters

NameInTypeNotes
slo_idrequiredpathstring (uuid)

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X GET "https://api.logicigniter.com/api/v1/errorbudget/slos/:slo_id/budget/history" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Responses

History points

Missing or invalid API key.

SLO not found

GET/api/v1/errorbudget/slos/{slo_id}/burn-rate

Burn rate over 1h/6h/24h windows

Burn rate is consumption-per-window divided by budget-per-window. >1 means you'll exhaust faster than the SLO window; >2 is a fast-burn condition; <0.1 is healthy.

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Parameters

NameInTypeNotes
slo_idrequiredpathstring (uuid)

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X GET "https://api.logicigniter.com/api/v1/errorbudget/slos/:slo_id/burn-rate" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Responses

Burn rate windows

Missing or invalid API key.

SLO not found

GET/api/v1/errorbudget/slos/{slo_id}/exhaustion

Project budget exhaustion

Given the current burn rate, returns the projected date when the budget will hit zero. Use this to decide whether to pause shipping or accept the risk on the next deploy.

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Parameters

NameInTypeNotes
slo_idrequiredpathstring (uuid)

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X GET "https://api.logicigniter.com/api/v1/errorbudget/slos/:slo_id/exhaustion" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Responses

Exhaustion projection

Missing or invalid API key.

SLO not found

PUT/api/v1/errorbudget/alerts/config

Configure alert thresholds

Set the burn-rate and budget-low thresholds for an SLO. Defaults: fast_burn 14.4 (consumes monthly budget in 30 min), slow_burn 1 (linear consumption), budget_low_pct 25.

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Request body (required)

Schema: ConfigureRequest

Sample JSON payload for evaluation.

{
  "slo_id": "11111111-1111-1111-1111-111111111111",
  "thresholds": {
    "fast_burn_threshold": 14.4,
    "slow_burn_threshold": 1,
    "budget_low_threshold_pct": 25
  }
}

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X PUT "https://api.logicigniter.com/api/v1/errorbudget/alerts/config" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{"slo_id":"11111111-1111-1111-1111-111111111111","thresholds":{"fast_burn_threshold":14.4,"slow_burn_threshold":1,"budget_low_threshold_pct":25}}'

Responses

Updated config

Invalid threshold values

Missing or invalid API key.

Endpoint requires an active subscription. Free tier covers 1 SLO with daily evaluation; paid plans unlock unlimited SLOs, sub-minute evaluation, and burn-rate alerting.

SLO not found

GET/api/v1/errorbudget/alerts

List alerts

Return the workspace's burn-rate and budget alerts, paginated.

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Parameters

NameInTypeNotes
page_sizequeryinteger
page_tokenquerystring

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X GET "https://api.logicigniter.com/api/v1/errorbudget/alerts" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Responses

Page of alerts

Missing or invalid API key.

POST/api/v1/errorbudget/alerts/{alert_id}/ack

Acknowledge an alert

Mark an alert as acknowledged so it stops re-firing in subsequent windows.

Public REST/JSON operation

This operation is documented for direct API evaluation. It describes the public payload and response contract only; assistant/MCP usage remains read only and is covered in the MCP guide.

Parameters

NameInTypeNotes
alert_idrequiredpathstring (uuid)

Request example

Replace placeholders with your confirmed access key and your own business data.

curl -X POST "https://api.logicigniter.com/api/v1/errorbudget/alerts/:alert_id/ack" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Accept: application/json"

Responses

Acknowledged

Missing or invalid API key.

Alert not found

Data models

Error

FieldTypeNotes
errorrequiredstring

AlertType

DefineSLORequest

FieldTypeNotes
namerequiredstring
target_pctrequirednumber (double)
window_daysrequiredinteger
sli_queryrequiredstring
metric_sourcerequiredstring

SLO

FieldTypeNotes
idstring (uuid)
namestring
target_pctnumber (double)
window_daysinteger
metric_sourcestring

SLOsResponse

FieldTypeNotes
itemsarray<SLO>

SLODetail

FieldTypeNotes
idstring (uuid)
namestring
target_pctnumber (double)
budget_remaining_pctnumber (double)
burn_rate_1hnumber (double)
burn_rate_6hnumber (double)
burn_rate_24hnumber (double)

BudgetStatus

FieldTypeNotes
idstring (uuid)
slo_idstring (uuid)
budget_remaining_pctnumber (double)
budget_consumed_minutesinteger

BurnRate

FieldTypeNotes
idstring (uuid)
slo_idstring (uuid)
burn_rate_1hnumber (double)
burn_rate_6hnumber (double)
burn_rate_24hnumber (double)

ExhaustionProjection

FieldTypeNotes
idstring (uuid)
slo_idstring (uuid)
projected_datestring (date-time)
current_burn_ratenumber (double)

BudgetDataPoint

FieldTypeNotes
budget_remaining_pctnumber (double)
burn_ratenumber (double)
snapshot_atstring (date-time)

BudgetHistory

FieldTypeNotes
idstring (uuid)
pointsarray<BudgetDataPoint>

BurnRateAlert

FieldTypeNotes
idstring (uuid)
slo_idstring (uuid)
alert_typeAlertType
burn_ratenumber (double)
budget_remaining_pctnumber (double)
sent_atstring (date-time)

AlertsResponse

FieldTypeNotes
itemsarray<BurnRateAlert>
next_page_tokenstring
total_countinteger

AlertThresholds

FieldTypeNotes
fast_burn_thresholdnumber (double)
slow_burn_thresholdnumber (double)
budget_low_threshold_pctnumber (double)

ConfigureRequest

FieldTypeNotes
slo_idrequiredstring (uuid)
thresholdsrequiredAlertThresholds

AlertConfig

FieldTypeNotes
idstring (uuid)
thresholdsAlertThresholds

AckResult

FieldTypeNotes
successboolean

CreateCustomerRequest

FieldTypeNotes
emailrequiredstring (email)
namerequiredstring

UpdateCustomerRequest

FieldTypeNotes
emailstring (email)
namestring

Customer

FieldTypeNotes
idstring (uuid)
emailstring (email)
namestring
created_atstring (date-time)

CustomersResponse

FieldTypeNotes
itemsarray<Customer>
next_page_tokenstring
total_countinteger