/v1/series/{uuid}/lifecycle-policyRead a series lifecycle policy
operation ID: get_v1_series_by_uuid_lifecycle_policy
Overview
Read a series lifecycle policy. Series-storage operations expose registered series, direct stored data, gap and chunk metadata, and lifecycle controls.
When to use it
- Use it when an application needs to read a series lifecycle policy.
- Use it when a diagnostic or maintenance tool needs storage-level series data instead of model-resolved attributes.
Quick example
Set the base URL and replace generated identifiers or credentials with values from your installation.
cURL
curl --request GET \
--url "$ORDINATE_URL/v1/series/00000000-0000-4000-8000-000000000001/lifecycle-policy" \
--header "Authorization: Bearer $ORDINATE_TOKEN"Expected output · 200
Current policy and version; both are null when absent
Example 200 output
{
"policy": {
"schema": "ordinate-lifecycle-policy/v1",
"raw": {
"keep": "forever"
},
"rollups": {
"keep": "forever"
},
"annotations": {
"keep": "forever"
}
},
"version": 0
}The cURL request supplies the documented path and query values and asks OrdinateDB to read a series lifecycle policy. The documented 200 response is current policy and version; both are null when absent.
How it works
These routes address a stable series UUID directly. Use resolved-read routes when an application should follow model bindings across time.
Reference
- Required capability
- read
- Authorization scope
- owning asset of series path parameter `uuid`, or staging-root
Parameters
| Name | In | Required | Type and constraints |
|---|---|---|---|
uuid | path | yes | stringformat: uuid |
Request body
This operation has no request body.
Responses
200Current policy and version; both are null when absent
application/json
policyany ofrequiredany of
option 1
annotationsobjectrequired- unknown fields rejected
keepstringrequired
rawone ofrequiredone of
option 1
keepstringrequired
option 2
keep_daysintegerrequired- minimum: 0
thenstringrequired
rollupsobjectrequired- unknown fields rejected
keepstringrequired
schemastringrequiredswinging_doorobjectoptional- unknown fields rejected
maxdev_percent_of_rangenumberrequired- format: double
range_maxnumberrequired- format: double
range_minnumberrequired- format: double
option 2
nullversionany ofrequiredany of
option 1
integerformat: int64option 2
null
Example 200 output
{
"policy": {
"schema": "ordinate-lifecycle-policy/v1",
"raw": {
"keep": "forever"
},
"rollups": {
"keep": "forever"
},
"annotations": {
"keep": "forever"
}
},
"version": 0
}401Authentication required
application/json
ErrorEnvelope
codestringrequiredcorrelation_idstringrequired- format: uuid
detailsobjectoptionalerrorstringrequired
Example 401 output
{
"error": "string",
"code": "account-sealed",
"correlation_id": "00000000-0000-4000-8000-000000000001"
}403Read capability is not granted
application/json
ErrorEnvelope
codestringrequiredcorrelation_idstringrequired- format: uuid
detailsobjectoptionalerrorstringrequired
Example 403 output
{
"error": "string",
"code": "account-sealed",
"correlation_id": "00000000-0000-4000-8000-000000000001"
}Code examples
These examples are generated from the source contract. Replace the base URL, credentials, identifiers, and minimal generated values for your instance.
JavaScript
const ordinateUrl = "http://localhost:8080";
const token = "<bearer-token>";
const response = await fetch(`${ordinateUrl}/v1/series/00000000-0000-4000-8000-000000000001/lifecycle-policy`, {
method: "GET",
headers: {
Authorization: `Bearer ${token}`
}
});
if (!response.ok) {
throw new Error(`OrdinateDB returned ${response.status}: ${await response.text()}`);
}
const data = await response.json();
console.log(data);Related topics
- Wire conventions — Understand the prerequisite concepts and transport behavior for this operation.
- REST endpoint index — Find other operations in Series storage.