SignalFx Developers Guide

Developer Home

Product Docs

SignalFx

Charts API

An API for creating, retrieving, updating, and deleting charts

Create Single Chart

Creates a new version 2 chart

post /chart

SignalFx API endpoint.
Replace {REALM} with the name of your realm. For example, if your realm is eu0, use https://api.eu0.signalfx.com/v2.
To find your realm, go to your profile page in the SignalFx web UI.
If you don't include a realm and use https://api.signalfx.com/v2, SignalFx interprets the endpoint as pointing to the us0 realm.

https://api.{REALM}.signalfx.com/v2/chart

Creates a new V2 chart. After you create the chart, add it to a dashboard using either the Create Dashboard or Update Dashboard API. You can then view and modify the chart from that dashboard. The chart also appears in the chart catalog for your organization. For more information on charts, including the types of charts SignalFx supports and the different ways you can view them, see the Charts Overview.

header Parameters
Content-Type
required
string

Format of the response payload.

X-SF-Token
required
string

A valid organization access token

Request Body schema: application/json
customProperties
string (Custom properties)

User-defined JSON object containing metadata

description
string (Chart description)

Description of the chart. This value appears underneath the chart name in the SignalFx web UI.

name
string (Chart name (displayed))

The displayed name of the chart in the dashboard

options
object (Chart options object)
packageSpecifications
string (SignalFlow package specifications)

Specifies one or more SignalFlow packages to import for use with the SignalFlow program specified in the programText option. This option must be set to signalfx.

programText
string (Chart SignalFlow program)

The SignalFlow program that provides data for the chart. If you use more than one line of SignalFlow, separate the lines with semicolons (";") or newline characters ("\n"). See the Charts Overview for more information."

tags
Array of string (Chart tags) <= 256 items

An array that contains tag values. You can use tags to search for or filter charts. One use is to tag charts that are in production with the value prod.

Responses

200

Successful chart creation

Response Headers
Access-Control-Allow-Credentials
boolean
Default: true

If true, the response can be exposed to users even if they've authenticated with a front end client using cookies

Access-Control-Allow-Origin
string
Default: "URL of the agent making the request"

Specifies the URIs that can access the results of the request

Access-Control-Expose-Headers
string

A header that can be exposed to front end clients. The headers may contain multiple instances of this header.

Connection
string
Default: "keep-alive"

Specifies how connections should be handled for a series of API calls

Content-Encoding
string
Default: "gzip"

Specifies the content encoding of the response payload, as a standard HTTP content-encoding token

Content-Type
string
Default: "application/json; charset=utf8"

Specifies the format of the response payload. Must be set to "application/json; charset=utf8".

Date
string
Example: "Mon, 01 Jan 2018 10:19:25 GMT"

'Timestamp of the response, formatted as ddd, dd mmm yyyy hh:mm:ss. The time is GMT+0'

Transfer-Encoding
string
Default: "chunked"

The form of encoding used to safely transfer the response to the user agent.

Vary
string
Default: "Accept-Encoding, User-Agent"

Indicates that the response payload may be encoded or compressed differently depending on the source of the request. Primarily used to inform caching agents whether content is static or may vary depending on the request settings.

X-Content-Type-Options
string
Default: "nosniff"

Indicates that front-end clients shouldn't attempt to determine the payload format and adjust the content-type to match their expectations.

Response Schema: application/json
created
integer <int32> (Chart creation time)

The time the chart was created. The format is Unix time, UTC+0. This value is always set by the system.

creator
string (Chart Creator ID)

SignalFx user ID of the user that initially created the chart

customProperties
string (Custom properties)

User-defined JSON object containing metadata

description
string (Chart description)

Description of the chart. This value appears underneath the chart name in the SignalFx web UI.

id
string (Chart ID)

System-defined identifier for the chart

lastUpdated
integer (Chart last updated time)

The last time the chart was updated, in Unix time UTC+0.

lastUpdatedBy
string (Chart last updated ID)

The SignalFx user 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
string (Chart name (displayed))

The displayed name of the chart in the dashboard

options
object (Chart options object)
packageSpecifications
string (SignalFlow package specifications)

Specifies one or more SignalFlow packages to import for use with the SignalFlow program specified in the programText option. This option must be set to signalfx.

programText
string (Chart SignalFlow program)

The SignalFlow program that provides data for the chart. If you use more than one line of SignalFlow, separate the lines with semicolons (";") or newline characters ("\n"). See the Charts Overview for more information."

tags
Array of string (Chart tags) <= 256 items

An array that contains tag values. You can use tags to search for or filter charts. One use is to tag charts that are in production with the value prod.

Request samples

application/json
Copy
Expand all Collapse all
{
  • "customProperties": "string",
  • "description": "string",
  • "name": "string",
  • "options":
    {
    },
  • "packageSpecifications": "string",
  • "programText": "string",
  • "tags":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "created": 1533676829319,
  • "creator": "string",
  • "customProperties": "string",
  • "description": "string",
  • "id": "string",
  • "lastUpdated": 1533676829319,
  • "lastUpdatedBy": "string",
  • "name": "string",
  • "options":
    {
    },
  • "packageSpecifications": "string",
  • "programText": "string",
  • "tags":
    [
    ]
}

Get Charts Using Query

Gets one or more charts based on selection criteria

get /chart

SignalFx API endpoint.
Replace {REALM} with the name of your realm. For example, if your realm is eu0, use https://api.eu0.signalfx.com/v2.
To find your realm, go to your profile page in the SignalFx web UI.
If you don't include a realm and use https://api.signalfx.com/v2, SignalFx interprets the endpoint as pointing to the us0 realm.

https://api.{REALM}.signalfx.com/v2/chart

Gets one or more V2 charts based on the selection criteria specified in the query parameters.

query Parameters
limit
integer >= 1
Default: 50

Maximum number of chart objects to return. The default is 50, and SignalFx uses this value if you specify an invalid value.

name
string

A search pattern for the value of the name property of a chart. You can use any UTF-8 character in the string, and SignalFx 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 SignalFx to match any value of the name property --
  • String of length 0
  • Omitting the name parameter from the query
offset
integer >= 0
Default: 0

Position in the results at which SignalFx should start returning chart objects.
SignalFx puts all the results into a 0-indexed array, sorted in a manner appropriate for the specified query parameters. The offset tells SignalFx 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, SignalFx doesn't return any values.

tags
string

A search pattern for values in the tags array property of a chart. You can use any UTF-8 character in the string, and SignalFx matches the pattern to any part of the tags property.
To specify more than one tag to search for, add additional tag query parameters to the URI. SignalFx combines multiple tag queries with an implicit OR.
For example, suppose you have some chart objects that have the following properties --

  • limit of 25 objects
  • name matches "myChart"
  • offset = 0
  • tags=cpu, tags=prod, tags=customer-facing
    The following curl statement retrieves the objects --
    curl -i
    --header  "Content-Type: application/json"
    --header "X-SF-TOKEN: YOUR_ORG_ACCESS_TOKEN" \
    -X GET \
    https://api.<REALM>.signalfx.com/v2/chart?limit=25&name=myChart&offset=0&tags=cpu&tags=prod
header Parameters
Content-Type
required
string
X-SF-Token
required
string

Responses

200

Successful retrieval of a chart or charts objects

Response Headers
Access-Control-Allow-Credentials
boolean
Default: true

If true, the response can be exposed to users even if they've authenticated with a front end client using cookies

Access-Control-Allow-Origin
string
Default: "URL of the agent making the request"

Specifies the URIs that can access the results of the request

Access-Control-Expose-Headers
string

A header that can be exposed to front end clients. The headers may contain multiple instances of this header.

Connection
string
Default: "keep-alive"

Specifies how connections should be handled for a series of API calls

Content-Encoding
string
Default: "gzip"

Specifies the content encoding of the response payload, as a standard HTTP content-encoding token

Content-Type
string
Default: "application/json; charset=utf8"

Specifies the format of the response payload. Must be set to "application/json; charset=utf8".

Date
string
Example: "Mon, 01 Jan 2018 10:19:25 GMT"

'Timestamp of the response, formatted as ddd, dd mmm yyyy hh:mm:ss. The time is GMT+0'

Transfer-Encoding
string
Default: "chunked"

The form of encoding used to safely transfer the response to the user agent.

Vary
string
Default: "Accept-Encoding, User-Agent"

Indicates that the response payload may be encoded or compressed differently depending on the source of the request. Primarily used to inform caching agents whether content is static or may vary depending on the request settings.

X-Content-Type-Options
string
Default: "nosniff"

Indicates that front-end clients shouldn't attempt to determine the payload format and adjust the content-type to match their expectations.

Response Schema: application/json
count
integer (Number of charts that match the query)

The number of charts that match the specified query. This value may be different from the number of objects in the results array property. The limit query parameter controls the number of objects 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 objects.

results
Array of object (Chart objects returned by the request)

An array of chart objects returned by the request. The objects match the search criteria specified in the query parameters of the request.

Response samples

application/json
Copy
Expand all Collapse all
{
  • "count": 0,
  • "results":
    [
    ]
}

Get Chart Using Chart ID

Gets a single chart using the {id} path parameter

get /chart/{id}

SignalFx API endpoint.
Replace {REALM} with the name of your realm. For example, if your realm is eu0, use https://api.eu0.signalfx.com/v2.
To find your realm, go to your profile page in the SignalFx web UI.
If you don't include a realm and use https://api.signalfx.com/v2, SignalFx interprets the endpoint as pointing to the us0 realm.

https://api.{REALM}.signalfx.com/v2/chart/{id}

Retrieves a single V2 chart object based on its chart ID

path Parameters
id
required
string

The ID of the chart object you want to retrieve

header Parameters
Content-Type
required
string
X-SF-Token
required
string

Responses

200

Successful retrieval of the chart specified by ID

Response Headers
Access-Control-Allow-Credentials
boolean
Default: true

If true, the response can be exposed to users even if they've authenticated with a front end client using cookies

Access-Control-Allow-Origin
string
Default: "URL of the agent making the request"

Specifies the URIs that can access the results of the request

Access-Control-Expose-Headers
string

A header that can be exposed to front end clients. The headers may contain multiple instances of this header.

Connection
string
Default: "keep-alive"

Specifies how connections should be handled for a series of API calls

Content-Encoding
string
Default: "gzip"

Specifies the content encoding of the response payload, as a standard HTTP content-encoding token

Content-Type
string
Default: "application/json; charset=utf8"

Specifies the format of the response payload. Must be set to "application/json; charset=utf8".

Date
string
Example: "Mon, 01 Jan 2018 10:19:25 GMT"

'Timestamp of the response, formatted as ddd, dd mmm yyyy hh:mm:ss. The time is GMT+0'

Transfer-Encoding
string
Default: "chunked"

The form of encoding used to safely transfer the response to the user agent.

Vary
string
Default: "Accept-Encoding, User-Agent"

Indicates that the response payload may be encoded or compressed differently depending on the source of the request. Primarily used to inform caching agents whether content is static or may vary depending on the request settings.

X-Content-Type-Options
string
Default: "nosniff"

Indicates that front-end clients shouldn't attempt to determine the payload format and adjust the content-type to match their expectations.

Response Schema: application/json
created
integer <int32> (Chart creation time)

The time the chart was created. The format is Unix time, UTC+0. This value is always set by the system.

creator
string (Chart Creator ID)

SignalFx user ID of the user that initially created the chart

customProperties
string (Custom properties)

User-defined JSON object containing metadata

description
string (Chart description)

Description of the chart. This value appears underneath the chart name in the SignalFx web UI.

id
string (Chart ID)

System-defined identifier for the chart

lastUpdated
integer (Chart last updated time)

The last time the chart was updated, in Unix time UTC+0.

lastUpdatedBy
string (Chart last updated ID)

The SignalFx user 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
string (Chart name (displayed))

The displayed name of the chart in the dashboard

options
object (Chart options object)
packageSpecifications
string (SignalFlow package specifications)

Specifies one or more SignalFlow packages to import for use with the SignalFlow program specified in the programText option. This option must be set to signalfx.

programText
string (Chart SignalFlow program)

The SignalFlow program that provides data for the chart. If you use more than one line of SignalFlow, separate the lines with semicolons (";") or newline characters ("\n"). See the Charts Overview for more information."

tags
Array of string (Chart tags) <= 256 items

An array that contains tag values. You can use tags to search for or filter charts. One use is to tag charts that are in production with the value prod.

Response samples

application/json
Copy
Expand all Collapse all
{
  • "created": 1533676829319,
  • "creator": "string",
  • "customProperties": "string",
  • "description": "string",
  • "id": "string",
  • "lastUpdated": 1533676829319,
  • "lastUpdatedBy": "string",
  • "name": "string",
  • "options":
    {
    },
  • "packageSpecifications": "string",
  • "programText": "string",
  • "tags":
    [
    ]
}

Update Single Chart

Updates an existing chart specified by the {id} path parameter

put /chart/{id}

SignalFx API endpoint.
Replace {REALM} with the name of your realm. For example, if your realm is eu0, use https://api.eu0.signalfx.com/v2.
To find your realm, go to your profile page in the SignalFx web UI.
If you don't include a realm and use https://api.signalfx.com/v2, SignalFx interprets the endpoint as pointing to the us0 realm.

https://api.{REALM}.signalfx.com/v2/chart/{id}

Fully updates an existing V2 chart identified by the chart ID. If you don't include a property in the request body, the API removes it from the chart or resets it to its default state. In particular, if you change the chart type the API removes any properties that don't apply to the new chart type. If you change the chart back to its original type, you don't have access to the previous type-specific values, so you have to specify them again.

path Parameters
id
required
string

The ID of the chart object you want to update

header Parameters
Content-Type
required
string
X-SF-Token
required
string
Request Body schema: application/json
customProperties
string (Custom properties)

User-defined JSON object containing metadata

description
string (Chart description)

Description of the chart. This value appears underneath the chart name in the SignalFx web UI.

name
string (Chart name (displayed))

The displayed name of the chart in the dashboard

options
object (Chart options object)
packageSpecifications
string (SignalFlow package specifications)

Specifies one or more SignalFlow packages to import for use with the SignalFlow program specified in the programText option. This option must be set to signalfx.

programText
string (Chart SignalFlow program)

The SignalFlow program that provides data for the chart. If you use more than one line of SignalFlow, separate the lines with semicolons (";") or newline characters ("\n"). See the Charts Overview for more information."

tags
Array of string (Chart tags) <= 256 items

An array that contains tag values. You can use tags to search for or filter charts. One use is to tag charts that are in production with the value prod.

Responses

200

Successful update of the chart specified by ID

Response Headers
Access-Control-Allow-Credentials
boolean
Default: true

If true, the response can be exposed to users even if they've authenticated with a front end client using cookies

Access-Control-Allow-Origin
string
Default: "URL of the agent making the request"

Specifies the URIs that can access the results of the request

Access-Control-Expose-Headers
string

A header that can be exposed to front end clients. The headers may contain multiple instances of this header.

Connection
string
Default: "keep-alive"

Specifies how connections should be handled for a series of API calls

Content-Encoding
string
Default: "gzip"

Specifies the content encoding of the response payload, as a standard HTTP content-encoding token

Content-Type
string
Default: "application/json; charset=utf8"

Specifies the format of the response payload. Must be set to "application/json; charset=utf8".

Date
string
Example: "Mon, 01 Jan 2018 10:19:25 GMT"

'Timestamp of the response, formatted as ddd, dd mmm yyyy hh:mm:ss. The time is GMT+0'

Transfer-Encoding
string
Default: "chunked"

The form of encoding used to safely transfer the response to the user agent.

Vary
string
Default: "Accept-Encoding, User-Agent"

Indicates that the response payload may be encoded or compressed differently depending on the source of the request. Primarily used to inform caching agents whether content is static or may vary depending on the request settings.

X-Content-Type-Options
string
Default: "nosniff"

Indicates that front-end clients shouldn't attempt to determine the payload format and adjust the content-type to match their expectations.

Response Schema: application/json
created
integer <int32> (Chart creation time)

The time the chart was created. The format is Unix time, UTC+0. This value is always set by the system.

creator
string (Chart Creator ID)

SignalFx user ID of the user that initially created the chart

customProperties
string (Custom properties)

User-defined JSON object containing metadata

description
string (Chart description)

Description of the chart. This value appears underneath the chart name in the SignalFx web UI.

id
string (Chart ID)

System-defined identifier for the chart

lastUpdated
integer (Chart last updated time)

The last time the chart was updated, in Unix time UTC+0.

lastUpdatedBy
string (Chart last updated ID)

The SignalFx user 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
string (Chart name (displayed))

The displayed name of the chart in the dashboard

options
object (Chart options object)
packageSpecifications
string (SignalFlow package specifications)

Specifies one or more SignalFlow packages to import for use with the SignalFlow program specified in the programText option. This option must be set to signalfx.

programText
string (Chart SignalFlow program)

The SignalFlow program that provides data for the chart. If you use more than one line of SignalFlow, separate the lines with semicolons (";") or newline characters ("\n"). See the Charts Overview for more information."

tags
Array of string (Chart tags) <= 256 items

An array that contains tag values. You can use tags to search for or filter charts. One use is to tag charts that are in production with the value prod.

Request samples

application/json
Copy
Expand all Collapse all
{
  • "customProperties": "string",
  • "description": "string",
  • "name": "string",
  • "options":
    {
    },
  • "packageSpecifications": "string",
  • "programText": "string",
  • "tags":
    [
    ]
}

Response samples

application/json
Copy
Expand all Collapse all
{
  • "created": 1533676829319,
  • "creator": "string",
  • "customProperties": "string",
  • "description": "string",
  • "id": "string",
  • "lastUpdated": 1533676829319,
  • "lastUpdatedBy": "string",
  • "name": "string",
  • "options":
    {
    },
  • "packageSpecifications": "string",
  • "programText": "string",
  • "tags":
    [
    ]
}

Delete Single Chart

Deletes an existing chart identified by the {id} path parameter.

delete /chart/{id}

SignalFx API endpoint.
Replace {REALM} with the name of your realm. For example, if your realm is eu0, use https://api.eu0.signalfx.com/v2.
To find your realm, go to your profile page in the SignalFx web UI.
If you don't include a realm and use https://api.signalfx.com/v2, SignalFx interprets the endpoint as pointing to the us0 realm.

https://api.{REALM}.signalfx.com/v2/chart/{id}

Permanently deletes a single V2 chart identified by its chart ID.

path Parameters
id
required
string

The ID of the chart object you want to update

header Parameters
Content-Type
required
string
X-SF-Token
required
string

Responses

200

Successful chart delete

Response Headers
Access-Control-Allow-Credentials
boolean
Default: true

If true, the response can be exposed to users even if they've authenticated with a front end client using cookies

Access-Control-Allow-Origin
string
Default: "URL of the agent making the request"

Specifies the URIs that can access the results of the request

Access-Control-Expose-Headers
string

A header that can be exposed to front end clients. The headers may contain multiple instances of this header.

Connection
string
Default: "keep-alive"

Specifies how connections should be handled for a series of API calls

Content-Encoding
string
Default: "gzip"

Specifies the content encoding of the response payload, as a standard HTTP content-encoding token

Content-Type
string
Default: "application/json; charset=utf8"

Specifies the format of the response payload. Must be set to "application/json; charset=utf8".

Date
string
Example: "Mon, 01 Jan 2018 10:19:25 GMT"

'Timestamp of the response, formatted as ddd, dd mmm yyyy hh:mm:ss. The time is GMT+0'

Transfer-Encoding
string
Default: "chunked"

The form of encoding used to safely transfer the response to the user agent.

Vary
string
Default: "Accept-Encoding, User-Agent"

Indicates that the response payload may be encoded or compressed differently depending on the source of the request. Primarily used to inform caching agents whether content is static or may vary depending on the request settings.

X-Content-Type-Options
string
Default: "nosniff"

Indicates that front-end clients shouldn't attempt to determine the payload format and adjust the content-type to match their expectations.