Splunk Observability Cloud Charts
API for creating, retrieving, updating, and deleting charts.
API for creating, retrieving, updating, and deleting charts.
openapi: 3.0.3
info:
title: Splunk Observability Cloud — Charts
version: 1.0.0
description: 'API for creating, retrieving, updating, and deleting charts.
Some chart API property names differ from the option labels in the UI. These differences are noted for each property name.
Requirements
You must have an organization access token with the API permission or a session token to use the API.
You must have the Splunk Observability Cloud admin or power role to use the POST /chart, PUT /chart/{id}, and DELETE /chart/{id}
endpoints.
You must have the Splunk Observability Cloud admin, power, or read_only role to use the GET /chart and GET /chart/{id}
endpoints.'
x-provenance:
method: reconstructed
authored_by: Splunk (content) / API Evangelist (assembly)
reconstructed_by: API Evangelist
reconstructed_on: '2026-08-19'
first_party: false
provider_published: false
note: Splunk's own OpenAPI objects, extracted from the React Server Component payload embedded in each of the 48 API reference
pages at dev.splunk.com. The operations and schemas are Splunk's; the assembly into standalone documents is API Evangelist's.
Splunk serves no fetchable spec file — dev.splunk.com answers 200 with an identical 6,638-byte shell for every asset
path, including invented control paths — so this is NOT first-party publication and is not graded as such.
x-evidence:
- type: source
url: https://dev.splunk.com/observability/reference/
- type: source
url: https://dev.splunk.com/observability/docs/apibasics/api_list/
servers:
- url: https://api.{REALM}.observability.splunkcloud.com/v2
description: Endpoint URL
variables:
REALM:
default: us0
description: Splunk Observability Cloud realm the organization is provisioned in (for example us0, us1, eu0, jp0, au0).
security:
- SessionToken: []
components:
securitySchemes:
SessionToken:
type: apiKey
in: header
name: X-SF-Token
description: Splunk Observability Cloud session token or org access token.
paths:
/chart:
get:
summary: Get Charts Using Query
description: 'Gets one or more charts based on the selection criteria specified in the
query parameters.
Note: Splunk Observability Cloud returns a maximum of 10,000 objects, even if your organization contains more than
10,000. To learn more, see the
Considerations for retrieve operations section in the developer guide.'
parameters:
- name: limit
in: query
description: 'Maximum number of charts to return. The default is 50, and Splunk Observability Cloud
uses this value if you specify an invalid value.'
schema:
type: integer
minimum: 1
default: 50
- name: name
in: query
description: 'A search pattern for the value of the name property of a chart.
You can use any UTF-8 character in the string, and the API matches
the pattern to any part of the name property. For example,
name=per matches the following chart names:
dropped per day
95th percentile
personal disk usage
The following conditions cause the API to match any value of
the name property:
String of length 0
Omitting the name parameter from the query'
schema:
type: string
- name: offset
in: query
description: 'Position in the results at which the API should start returning
charts.
The API puts all the results into a 0-indexed array,
sorted in a manner appropriate for the specified query parameters.
The offset tells the API the array index at which it should start
returning results.
If you specify an offset that''s greater than
the length of the results array, the API doesn''t return any values.'
schema:
type: integer
minimum: 0
default: 0
- name: tags
in: query
description: "A search pattern for values in the tags array property of a chart.\nYou can use any UTF-8 character\
\ in the string, and the API matches\nthe pattern to any part of the tags property.\nTo specify more than one tag\
\ to search for, add additional tag query parameters\nto the URI. The API combines multiple tag queries with an\n\
implicit OR.\nFor example, suppose you want to retrieve the first 25 charts that have following properties:\n\n\
name matches \"myChart\"\ntags=cpu, tags=prod, tags=customer-facing\n\nThe following curl statement retrieves the\
\ charts:\ncurl -i\n --header \"Content-Type: application/json\"\n --header \"X-SF-TOKEN: <AUTHENTICATION_TOKEN>\"\
\ \\\n --request GET \\\n https://api.<REALM>.observability.splunkcloud.com/v2/chart?limit=25&name=myChart&offset=0&tags=cpu&tags=prod"
schema:
type: string
- name: X-SF-TOKEN
in: header
description: Authentication token
required: true
schema:
type: string
responses:
'200':
description: HTTP 200 response
content:
application/json:
schema:
type: object
properties:
count:
title: Number of charts that match the query
type: integer
description: 'The number of charts that match the specified query. This
value may be different from the number of charts in the
results array property. The limit query parameter
controls the number of charts that the request actually
returns, and the offset query parameter determines the
position at which the request starts returning
parameters. These two factors can affect the actual
number of returned charts.'
results:
title: Charts returned by the request
type: array
items:
type: object
properties:
created:
title: Chart creation time
type: integer
format: int64
example: 1557534630000
readOnly: true
description: 'The time the chart was created, in *nix time in milliseconds.
This value is always set by the system.'
creator:
title: Chart Creator ID
type: string
readOnly: true
description: ID of the user that initially created the chart
customProperties:
title: Custom properties
type: object
additionalProperties: true
description: User-defined JSON object containing metadata
description:
title: Chart description
type: string
description: 'Extended text description of the chart. This text appears in the Chart description
text box
at the top of the New Chart screen in the UI.'
id:
title: Chart ID
type: string
readOnly: true
description: System-defined identifier for the chart
lastUpdated:
title: Chart last updated time
type: integer
format: int64
example: 1557707430000
readOnly: true
description: 'The last time the chart was updated, in *nix time in milliseconds.
This value is always set by the system.'
lastUpdatedBy:
title: Chart last updated ID
type: string
readOnly: true
description: 'The ID of the last person who updated the chart. If the
last update was done by the system, the value is the string literal
"AAAAAAAAAA".'
name:
title: Chart name (displayed)
type: string
description: 'Short chart name. In the UI, you enter the chart name in the Untitled Chart text box
at the top of the New Chart screen.'
options:
type: object
title: Chart options
properties:
areaChartOptions:
title: Properties specific to area charts
type: object
properties:
showDataMarkers:
title: Controls the display of data markers for area charts
type: boolean
default: false
description: 'If options.type is TimeSeriesChart and options.defaultPlotType
property is AreaChart, then areaChartOptions.showDataMarkers
controls the appearance of small dots in the chart indicating
times at which data arrived. To show markers, set to true;
otherwise, set to false.
If you use
options.areaChartOptions.showDataMarkers with any other values of
options.type and options.defaultPlotType, the API returns an
HTTP response code 400.'
axes:
title: Axes options
type: array
items:
title: Chart axes options
type: object
properties:
highWatermark:
type: number
format: float
description: 'A point on the Y axis at which the chart displays a horizontal line,
indicating the max Y value of interest. Points with a Y value that
exceeds the high water mark still appear.
Notes:
Use only when options.type property is TimeSeriesChart. Otherwise, the API returns an
HTTP response code 400.
The value must be less than or equal to options.axes.max and greater than
options.axes.lowWaterMark for the corresponding axis.'
highWatermarkLabel:
type: string
maxLength: 1000
description: 'A label that''s displayed beside the horizontal line indicating the
high water mark.
Notes:
Use only when options.type property is TimeSeriesChart. Otherwise, the API returns an
HTTP response code 400.
If options.axes.highWaterMark isn''t specified, this label is ignored.'
label:
type: string
description: 'Label that''s displayed for the Y axis of the chart. It appears to
the left of axis values on the left axis and to the right of axis
values on the right axis.
Note: Use only when options.type property is TimeSeriesChart. Otherwise, the API returns
an HTTP response code 400.'
lowWatermark:
type: number
format: float
description: 'A point on the Y axis at which the chart displays a horizontal line,
indicating the minimum Y value of interest. Points with a Y value
that is less than the low water mark still appear.
Notes:
Use only when options.type property is TimeSeriesChart. Otherwise, the API returns an
HTTP response code 400.
Value must be greater than or equal to options.axes.min and less than
options.axes.highWaterMark for the corresponding axis.'
lowWatermarkLabel:
type: string
maxLength: 1000
description: 'A label that''s displayed beside the horizontal line indicating the
low water mark.
Notes:
Use only when options.type property is TimeSeriesChart. Otherwise, the API returns an
HTTP response code 400`.
If options.axes.lowWaterMark isn''t specified, the API ignores this label.'
max:
type: number
format: float
description: 'Specifies the largest data value to display on the chart. Overrides
options.includeZero if the properties are set to incompatible
values.
Notes:
Use only when options.type property is TimeSeriesChart. Otherwise, the API returns an
HTTP response code 400.
The value must be greater than the value of options.axes.min for the same options.axes
element.'
min:
type: number
format: float
description: 'Specifies the smallest data value to display on the chart. Overrides
options.includeZero if the properties are set to incompatible
values.
Notes:
Use only when options.type property is TimeSeriesChart. Otherwise, the API returns an
HTTP response code 400.
The value must be less than the value of options.axes.max for the same options.axes
element.'
description: 'Axis options for the left and right side of a chart with options.type of
TimeSeriesChart. The object in the first element specifies options
for the left chart axis, and the object in the second element specifies
options for the right chart axis. All other elements are ignored.
Note: Use only when options.type is TimeSeriesChart;
otherwise, the API returns an HTTP response code 400.'
axisPrecision:
title: 'Specifies the number of digits displayed for values plotted on the
chart.
'
type: integer
minimum: 3
maximum: 10
default: 3
description: 'Specifies the digits Splunk Observability Cloud displays for values plotted on
the
chart. Choose a value that is sensible for the data; that is, ensure
that the variations in the data are discernible using the specified
precision. For example, if the data values usually fluctuate between
100000 and 100010, using a precision of 3 would result in a value of
100000 for every data point. Setting the precision to 6 would
distinguish between 100001 and 100002.
Note: Use only when options.type property is TimeSeriesChart. Otherwise, the API returns an
HTTP response code 400.'
colorBy:
title: 'Mechanism by which color is applied to values in the chart.
'
type: string
enum:
- Range
- Scale
- Dimension
- Metric
description: 'Specifies how to apply a color scheme to the values in the chart. If
you want to apply color in a text chart, use HTML within the
markdown property. The values you can use depend on the type of
chart you specify in options.type:
Text: The API returns an HTTP response code 400.
Heatmap: The Range and Scale enumerated types are allowed; the default is Range.
List: The Dimension, Metric, and Scale enumerated types are allowed; the default is Metric.
SingleValue: The Dimension, Metric, and Scale enumerated types are allowed; the default is
Metric.
TimeSeriesChart: The Dimension and Metric enumerated types are allowed; the default is Dimension.'
colorRange:
title: Heatmap color range options
type: object
properties:
color:
title: Starting color for a heatmap chart color range
type: string
minLength: 7
description: 'The starting color value for data values in a heatmap chart.
Specify the value as a 6-character hexadecimal value preceded by the "#"
character.
The options.colorScale property controls how Splunk Observability Cloud creates
a range of colors to represent different data values;
options.colorRange.color is the starting point of the range,
and options.colorScale controls the number of different
colors.
The UI limits you to hexadecimal values for the colors displayed in
table 5 in the section Chart color palettes
of the Charts API guide.
Use the same values for API requests to keep your chart settings consistent with the UI.'
max:
title: 'Maximum color value assigned to a data value in the heatmap
chart.
'
type: string
minLength: 7
description: 'The color value to associate with the largest incoming data value
in the heatmap chart.
To learn more about this property, see the description of options.colorRange.color.'
min:
title: 'Minimum color value assigned to a data value in the heatmap
chart.
'
type: string
minLength: 7
description: 'The color value associated with the smallest incoming data value
in the heatmap chart.
To learn more about this property, see the description of options.colorRange.color.'
description: 'Properties that specify the range of color values to use in a
heatmap chart, in the form of a JSON object. The properties specify
the lowest and highest color to use. options.colorScale
controls how Splunk Observability Cloud sets each intermediate chart color
within the range.
Note: Use only when options.type property is Heatmap. Otherwise, the API returns an HTTP response
code 400.'
colorScale:
title: 'Heatmap chart color range limits
'
type: object
properties:
inverted:
title: 'Determines if colors are applied in reverse order from the
default for the app.
'
type: boolean
default: false
description: 'Determines how to use colors specified in options.colorRange.
If you set this property to true, and you also set options.colorBy
to Range, darker colors represent smaller data values. For
chart types other than Heatmap, setting this property to true
results in red representing lower values and green representing
higher ones (if the default color scheme is in use).'
thresholds:
title: Specifies data values that partition the data in the chart.
type: array
items:
type: number
format: float
description: 'Specifies data values that map to color gradient values. Specify
the values from lowest to highest. Data values that outside the
specified partitions don''t appear in color, so you should set
the first array value to correspond to the lowest expected data
value. Similarly, set the last array value to correspond to the
highest expected data value.
Note: Splunk Observability Cloud uses only the first six elements in the array.'
description: 'Properties that specify the limits of the color ranges specified
in options.colorRange, in the form of a JSON object. The
properties also control the order of colors in the color gradient.
The properties in options.colorScale2 override any properties you
specify here.
Note: Use only when options.type property is Heatmap. Otherwise, the API returns an HTTP response
code 400.'
colorScale2:
title: List of secondary visualization color properties
type: array
items:
title: Secondary visualization options
type: object
required:
- paletteIndex
properties:
gt:
title: 'Indicates the lower threshold of this range, not including the value
itself.
'
type: number
format: float
description: 'The lower threshold of a color range, not including the specified
value itself.
Notes:
Use only when options.type property is List or SingleValue;
otherwise, the API returns an HTTP response code 400.
The value must be less than the value of options.colorScale2.lt or options.colorScale2.lte
of the same element.
options.colorScale2.gt and options.colorScale2.gte are mutually exclusive'
gte:
title: 'Indicates the lower threshold of this range, inclusive
'
type: number
format: float
description: 'The lower threshold of a color range, including the specified value
itself.
Notes:
Use only when options.type property is List or SingleValue;
otherwise, the API returns an HTTP response code 400.
The value must be less than the value of options.colorScale2.lt or options.colorScale2.lte
of the same element.
options.colorScale2.gt and options.colorScale2.gte are mutually exclusive.'
lt:
title: 'Indicates the upper threshold of this range, not including the value
itself.
'
type: number
format: float
description: 'The upper threshold of a color range, not including the specified
value itself.
Notes:
Use only when options.type property is List or SingleValue;
otherwise, the API returns an HTTP response code 400.
The value must be less than the value of options.colorScale2.gt or options.colorScale2.gte
of the same element.
options.colorScale2.lt and options.colorScale2.lte are mutually exclusive.'
lte:
title: 'Color range upper threshold, inclusive
'
type: number
format: float
description: 'The upper threshold of a color range, including the specified value
itself.
Notes:
Use only when options.type property is List or SingleValue;
otherwise, the API returns an HTTP response code 400.
The value must be less than the value of options.colorScale2.gt or options.colorScale2.gte
of the same
element.
options.colorScale2.lt and options.colorScale2.lte are mutually exclusive'
paletteIndex:
title: Color to use for data points in the specified range
type: integer
minimum: 0
maximum: 21
description: 'Index of a color listed in table 5 of the section Charts color palettes.
The value is used to color points in the specified range.
Notes:
Use only when options.type property is List or SingleValue;
otherwise, the API returns an HTTP response code 400.
Depending on the settings users select for color blindness, they may see
the alternate colors listed in table 6 of the section Charts color palettes.
of the Charts API guide.'
description: 'List of secondary visualization color properties, in the form of an array
of JSON objects. Each object in the array specifies the information
for a single color range, including the color to display for that
range and the borders of the range. The array specifies the entire
range displayed in the secondary visualization or heatmap chart. You
don''t need to insert the elements in a specific order, because
automatically orders them by the values in the display. The lowest
value becomes the left border of the secondary visualization, and
the highest value becomes the right border.'
defaultPlotType:
title: Specifies the visualization option to use for a graph
type: string
enum:
- LineChart
- AreaChart
- ColumnChart
- Histogram
default: LineChart
description: 'When you choose a graph chart type by setting options.type to TimeSeriesChart,
options.defaultPlotType sets the visualization to use for
plots in the chart:
LineChart: A p
# --- truncated at 32 KB (465 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/splunk-observability/refs/heads/main/openapi/splunk-observability-charts-openapi.yml