Chronosphere DerivedLabel API
The DerivedLabel API from Chronosphere — 2 operation(s) for derivedlabel.
The DerivedLabel API from Chronosphere — 2 operation(s) for derivedlabel.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/chronosphere-derivedlabel-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Chronosphere Derived Label API
version: v1
description: 'Operations tagged DerivedLabel across 2 of this provider''s published API definitions: chronosphere-config-v1-openapi3.json, chronosphere-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://{tenant}.chronosphere.io
variables:
tenant:
default: tenant
description: tenant ID assigned by the service provider
- url: /
tags:
- name: DerivedLabel
paths:
/api/v1/config/derived-labels:
get:
operationId: ListDerivedLabels
parameters:
- description: 'Sets the preferred number of items to return per page. If set to `0`, the
server will use its default value. Regardless of the value specified, clients
must never assume how many items will be returned.'
in: query
name: page.max_size
schema:
format: int64
type: integer
- description: 'An opaque page token that identifies which page the client should request.
An empty value indicates the first page.'
in: query
name: page.token
schema:
type: string
- description: Filters results by slug, where any DerivedLabel with a matching slug in the given list (and matches all other filters) will be returned.
in: query
name: slugs
schema:
items:
type: string
type: array
- description: Filters results by name, where any DerivedLabel with a matching name in the given list (and matches all other filters) will be returned.
in: query
name: names
schema:
items:
type: string
type: array
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/configv1ListDerivedLabelsResponse'
description: A successful response.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: An unexpected error response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/genericError'
description: An undefined error response.
tags:
- DerivedLabel
security:
- ApiKeyAuth: []
summary: List derived labels
x-summary-source: derived
post:
operationId: CreateDerivedLabel
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/configv1CreateDerivedLabelRequest'
required: true
x-originalParamName: body
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/configv1CreateDerivedLabelResponse'
description: A successful response containing the created DerivedLabel.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: Cannot create the DerivedLabel because the request is invalid.
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: Cannot create the DerivedLabel because there is a conflict with an existing DerivedLabel.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: An unexpected error response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/genericError'
description: An undefined error response.
tags:
- DerivedLabel
security:
- ApiKeyAuth: []
summary: Create derived label
x-summary-source: derived
servers:
- url: https://{tenant}.chronosphere.io
variables:
tenant:
default: tenant
description: tenant ID assigned by the service provider
/api/v1/config/derived-labels/{slug}:
delete:
operationId: DeleteDerivedLabel
parameters:
- in: path
name: slug
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/configv1DeleteDerivedLabelResponse'
description: A successful response.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: Cannot delete the DerivedLabel because it is in use.
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: Cannot delete the DerivedLabel because the slug does not exist.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: An unexpected error response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/genericError'
description: An undefined error response.
tags:
- DerivedLabel
security:
- ApiKeyAuth: []
summary: Delete derived label
x-summary-source: derived
get:
operationId: ReadDerivedLabel
parameters:
- in: path
name: slug
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/configv1ReadDerivedLabelResponse'
description: A successful response.
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: Cannot read the DerivedLabel because the slug does not exist.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: An unexpected error response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/genericError'
description: An undefined error response.
tags:
- DerivedLabel
security:
- ApiKeyAuth: []
summary: Read derived label
x-summary-source: derived
put:
operationId: UpdateDerivedLabel
parameters:
- in: path
name: slug
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ConfigV1UpdateDerivedLabelBody'
required: true
x-originalParamName: body
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/configv1UpdateDerivedLabelResponse'
description: A successful response containing the updated DerivedLabel.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: Cannot update the DerivedLabel because the request is invalid.
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: Cannot update the DerivedLabel because the slug does not exist.
'409':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: Cannot update the DerivedLabel because there is a conflict with an existing DerivedLabel.
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/apiError'
description: An unexpected error response.
default:
content:
application/json:
schema:
$ref: '#/components/schemas/genericError'
description: An undefined error response.
tags:
- DerivedLabel
security:
- ApiKeyAuth: []
summary: Update derived label
x-summary-source: derived
servers:
- url: https://{tenant}.chronosphere.io
variables:
tenant:
default: tenant
description: tenant ID assigned by the service provider
components:
schemas:
ConstructedLabelValueDefinition:
properties:
filters:
description: Determine when to apply `name_mappings`, filtering out all other values.
items:
$ref: '#/components/schemas/configv1LabelFilter'
type: array
value:
type: string
type: object
MappingLabelValueMapping:
properties:
source_value_globs:
description: Defines the source label values that map into the given `target_value`.
items:
type: string
type: array
target_value:
description: "The value that `source_value_globs` are mapped into. For example, this\nmapping indicates that the target value `cat` maps to the source label's\nvalues of `Cat` and `CAT`.:\n```yaml\nvalue_mappings:\n - source_value_globs:\n - Cat\n - CAT\n target_value: cat\n```"
type: string
type: object
configv1ReadDerivedLabelResponse:
properties:
derived_label:
$ref: '#/components/schemas/configv1DerivedLabel'
type: object
configv1CreateDerivedLabelRequest:
properties:
derived_label:
allOf:
- $ref: '#/components/schemas/configv1DerivedLabel'
description: The DerivedLabel to create.
dry_run:
description: If `true`, validates the specified configuration without creating the DerivedLabel. If the specified configuration is valid, the endpoint returns a partial response without the DerivedLabel. If the specified configuration is invalid, the endpoint returns an error.
type: boolean
type: object
genericError:
additionalProperties: true
type: object
MetricLabelConstructedLabel:
properties:
value_definitions:
items:
$ref: '#/components/schemas/ConstructedLabelValueDefinition'
type: array
type: object
DerivedLabelMetricLabel:
properties:
constructed_label:
allOf:
- $ref: '#/components/schemas/MetricLabelConstructedLabel'
description: "A constructed label creates a label where none previously existed, in contrast\nto a mapping derived label. For example, this mapping constructs a label\nthat's defined only when an `instance` begins with\n`m3coordinator-{read,write,admin}`, and where the value is statically\ndefined.\n```yaml\nlabel_name: tier\nconstructed_label:\n value_definitions:\n - filters:\n - name: instance\n value_glob: m3coordinator-read*\n value: read\n - filters:\n - name: instance\n value_glob: m3coordinator-write*\n value: write\n - filters:\n - name: instance\n value_glob: m3coordinator-admin*\n value: admin\n```"
mapping_label:
allOf:
- $ref: '#/components/schemas/MetricLabelMappingLabel'
description: "A mapping label is a type of derived label that's generated by pulling values\nfrom some other label on the time series. For example, this mapping matches a\nlabel that's defined only when `__name__` begins with `envoy_` or `grpc_,` and\nwhere the value is copied from `backend_service` or `grpc_service`:\n```yaml\nlabel_name: chronosphere_service\nmapping_label:\n name_mappings:\n - filters:\n - name: __name__\n value_glob: grpc_*\n source_label: grpc_service\n - filters:\n - name: __name__\n value_glob: envoy_*\n source_label: backend_service\n```"
type: object
DerivedLabelSpanTagNameMapping:
properties:
source_tag:
description: The source span tag name.
type: string
type: object
configv1UpdateDerivedLabelResponse:
properties:
derived_label:
$ref: '#/components/schemas/configv1DerivedLabel'
type: object
ConfigV1UpdateDerivedLabelBody:
properties:
create_if_missing:
description: If `true`, the DerivedLabel will be created if it does not already exist, identified by `slug`. If `false`, an error will be returned if the DerivedLabel does not already exist.
type: boolean
derived_label:
allOf:
- $ref: '#/components/schemas/configv1DerivedLabel'
description: The DerivedLabel to update.
dry_run:
description: If `true`, validates the specified configuration without creating or updating the DerivedLabel. If the specified configuration is valid, the endpoint returns a partial response without the DerivedLabel. If the specified configuration is invalid, the endpoint returns an error.
type: boolean
type: object
configv1DerivedLabelLabelPolicy:
enum:
- KEEP
- OVERRIDE
type: string
configv1DeleteDerivedLabelResponse:
type: object
DerivedLabelSpanTag:
properties:
name_mappings:
description: 'Determines where the input data for a derived label comes from. For each
name mapping, you must define a `source_label`. If multiple name mappings
are defined, the first name mapping that matches is used to map the source
tag to the derived tag.'
items:
$ref: '#/components/schemas/DerivedLabelSpanTagNameMapping'
type: array
type: object
apiError:
properties:
message:
description: An error message describing what went wrong.
type: string
type: object
MetricLabelMappingLabel:
properties:
name_mappings:
description: 'Determines where the input data for a derived label comes from. For each
name mapping, you must define a `source_label`. If multiple name mappings
are defined, the first name mapping that matches is used to map the source
label to the derived label.'
items:
$ref: '#/components/schemas/MetricLabelMappingLabelNameMapping'
type: array
value_mappings:
description: 'These value mappings apply to the whole mapping label.
If there''s no name_mappings, these value mappings apply to the label that exists on the metric.'
items:
$ref: '#/components/schemas/MappingLabelValueMapping'
type: array
required:
- name_mappings
type: object
MetricLabelMappingLabelNameMapping:
properties:
filters:
items:
$ref: '#/components/schemas/configv1LabelFilter'
type: array
source_label:
description: The source label name on the time series from when it was ingested.
type: string
value_mappings:
description: These value mappings apply only to the name mapping they belong to.
items:
$ref: '#/components/schemas/MappingLabelValueMapping'
type: array
type: object
configv1ListDerivedLabelsResponse:
properties:
derived_labels:
items:
$ref: '#/components/schemas/configv1DerivedLabel'
type: array
page:
$ref: '#/components/schemas/configv1PageResult'
type: object
configv1CreateDerivedLabelResponse:
properties:
derived_label:
$ref: '#/components/schemas/configv1DerivedLabel'
type: object
configv1LabelFilter:
properties:
name:
description: The name of the label to match.
example: job
type: string
value_glob:
description: The glob value of the label to match.
example: myservice*
type: string
type: object
configv1DerivedLabel:
properties:
created_at:
description: Timestamp of when the DerivedLabel was created. Cannot be set by clients.
format: date-time
readOnly: true
type: string
description:
description: Optional. Description of the derived label.
type: string
existing_label_policy:
allOf:
- $ref: '#/components/schemas/configv1DerivedLabelLabelPolicy'
description: 'Specifies the action taken when there''s a metric label with the same name as
this derived label, on the same time series. If the label is present on another
time series, this field doesn''t apply. Default: `KEEP`.
- If set to `KEEP`, the label that already exists on the metric is used instead of the derived label.
- If set to `OVERRIDE`, the derived label is used instead of the metric''s existing label.'
label_name:
description: Name of the derived label. Must be unique across the system.
type: string
metric_label:
allOf:
- $ref: '#/components/schemas/DerivedLabelMetricLabel'
description: Sets the metric labels to map to `label_name`.
name:
description: The name of the DerivedLabel. You can modify this value after the DerivedLabel is created.
type: string
slug:
description: The unique identifier of the DerivedLabel. If a `slug` isn't provided, one is generated based on the `name` field. You can't modify this field after the DerivedLabel is created.
type: string
span_tag:
allOf:
- $ref: '#/components/schemas/DerivedLabelSpanTag'
description: Sets the span tags to map to `label_name`.
updated_at:
description: Timestamp of when the DerivedLabel was last updated. Cannot be set by clients.
format: date-time
readOnly: true
type: string
required:
- label_name
- name
type: object
configv1PageResult:
properties:
next_token:
description: 'An opaque page token that identifies the next page of items that the
client should request. An empty value indicates that there are no
more items to return.'
type: string
type: object
ConstructedLabelValueDefinition_2:
type: object
properties:
value:
type: string
filters:
type: array
items:
$ref: '#/components/schemas/configv1LabelFilter_2'
MappingLabelValueMapping_2:
type: object
properties:
source_value_globs:
type: array
description: Defines the source label values that should be mapped into the given target_value.
items:
type: string
target_value:
type: string
description: "The value that source_value_globs are mapped into.\nFor example, given this mapping:\n```yaml\nvalue_mappings:\n - source_value_globs:\n - Cat\n - CAT\n target_value: cat\n```\nThis indicates that the target value `cat` maps to the source label's values `Cat` and `CAT`."
MappingLabelNameMapping:
type: object
properties:
filters:
type: array
items:
$ref: '#/components/schemas/configv1LabelFilter_2'
source_label:
type: string
description: The actual label ingested on the time series
value_mappings:
type: array
description: These value mappings apply to just the name mapping they belong to.
items:
$ref: '#/components/schemas/MappingLabelValueMapping_2'
configv1CreateDerivedLabelRequest_2:
type: object
properties:
derived_label:
$ref: '#/components/schemas/configv1DerivedLabel_2'
dry_run:
type: boolean
description: If true, the DerivedLabel isn't created, and no response DerivedLabel will be returned. The response will return an error if the given DerivedLabel is invalid.
DerivedLabelMetricLabel_2:
type: object
properties:
constructed_label:
$ref: '#/components/schemas/MetricLabelConstructedLabel'
mapping_label:
$ref: '#/components/schemas/MetricLabelMappingLabel_2'
ConfigV1UpdateDerivedLabelBody_2:
type: object
properties:
derived_label:
$ref: '#/components/schemas/configv1DerivedLabel_2'
create_if_missing:
type: boolean
description: If true, the DerivedLabel will be created if it does not already exist, identified by slug. If false, an error will be returned if the DerivedLabel does not already exist.
dry_run:
type: boolean
description: If true, the DerivedLabel isn't created or updated, and no response DerivedLabel will be returned. The response will return an error if the given DerivedLabel is invalid.
apiError_2:
type: object
properties:
code:
type: integer
description: An optional private error code whose values are undefined.
format: int32
message:
type: string
description: An error message describing what went wrong.
MetricLabelMappingLabel_2:
type: object
properties:
name_mappings:
type: array
items:
$ref: '#/components/schemas/MappingLabelNameMapping'
value_mappings:
type: array
description: 'These value mappings apply to the whole mapping label.
If there''s no name_mappings, these value mappings apply to the label that exists on the metric.'
items:
$ref: '#/components/schemas/MappingLabelValueMapping_2'
configv1LabelFilter_2:
type: object
properties:
name:
type: string
description: Name of the label to match.
example: job
value_glob:
type: string
description: Glob value of the label to match.
example: myservice*
configv1DerivedLabel_2:
type: object
properties:
name:
type: string
description: Required. Name of the DerivedLabel. You can modify this value after the DerivedLabel is created.
slug:
type: string
description: Unique identifier of the DerivedLabel. If a `slug` isn't provided, one will be generated based of the `name` field. You can't modify this field after the DerivedLabel is created.
created_at:
type: string
description: Timestamp of when the DerivedLabel was created. Cannot be set by clients.
format: date-time
readOnly: true
updated_at:
type: string
description: Timestamp of when the DerivedLabel was last updated. Cannot be set by clients.
format: date-time
readOnly: true
label_name:
type: string
description: Name of the derived label. It needs to be unique across the system.
description:
type: string
description: Optional description of the derived label.
metric_label:
$ref: '#/components/schemas/DerivedLabelMetricLabel_2'
existing_label_policy:
$ref: '#/components/schemas/configv1DerivedLabelLabelPolicy'
configv1PageResult_2:
type: object
properties:
next_token:
type: string
description: 'Opaque page token which identifies the next page of items which the
client should request. An empty next_token indicates that there are no
more items to return.'
securitySchemes:
ApiKeyAuth:
description: Chronosphere API token
in: header
name: API-Token
type: apiKey
x-refined-from:
- chronosphere-config-v1-openapi3.json
- chronosphere-openapi.yml