SLA statements
List SLA statements
Newest first. Requires the SLA Ledger plan feature (403 feature_locked otherwise).
GET
/
sla
/
statements
List SLA Ledger statements
curl --request GET \
--url https://use.observer/api/v1/sla/statements \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://use.observer/api/v1/sla/statements', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://use.observer/api/v1/sla/statements"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"items": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"customer_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"period_label": "<string>",
"period_start": "2023-11-07T05:31:56Z",
"period_end": "2023-11-07T05:31:56Z",
"revision": 123,
"state": "draft",
"sha256": "<string>",
"customer_name": "<string>",
"contract_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"timezone": "<string>",
"attainment_min": "<string>",
"credit_pct": "<string>",
"credit_amount_minor": 123,
"currency": "<string>",
"credit_state": "none",
"signature": "<string>",
"signing_key_id": "<string>",
"generated_at": "2023-11-07T05:31:56Z",
"approved_at": "2023-11-07T05:31:56Z",
"sent_at": "2023-11-07T05:31:56Z"
}
],
"next_cursor": "<string>"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}Authorizations
An organization API key (obs_pub_…) sent as Authorization: Bearer <key>. Each key carries scopes; an endpoint lists the scope it needs.
Query Parameters
Page size. Out-of-range values are clamped.
Required range:
1 <= x <= 200Opaque cursor from the previous page's next_cursor.
YYYY-MM, in each statement's own timezone.
Pattern:
^\d{4}-(0[1-9]|1[0-2])$Available options:
draft, in_review, approved, delivered, superseded, void Was this page helpful?
⌘I
List SLA Ledger statements
curl --request GET \
--url https://use.observer/api/v1/sla/statements \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://use.observer/api/v1/sla/statements', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://use.observer/api/v1/sla/statements"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"items": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"customer_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"period_label": "<string>",
"period_start": "2023-11-07T05:31:56Z",
"period_end": "2023-11-07T05:31:56Z",
"revision": 123,
"state": "draft",
"sha256": "<string>",
"customer_name": "<string>",
"contract_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"timezone": "<string>",
"attainment_min": "<string>",
"credit_pct": "<string>",
"credit_amount_minor": 123,
"currency": "<string>",
"credit_state": "none",
"signature": "<string>",
"signing_key_id": "<string>",
"generated_at": "2023-11-07T05:31:56Z",
"approved_at": "2023-11-07T05:31:56Z",
"sent_at": "2023-11-07T05:31:56Z"
}
],
"next_cursor": "<string>"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}{
"type": "https://docs.use.observer/api/getting-started/errors#forbidden",
"title": "forbidden",
"status": 403,
"detail": "missing scope: write:incidents"
}
