LightStep

LightStep Documentation

Welcome to the LightStep developer hub. You'll find comprehensive guides and documentation to help you start working with LightStep as quickly as possible, as well as support if you get stuck. Let's jump right in!

Get Started    
 

The LightStep API allows customers to interact with LightStep programmatically. It exposes a subset of all the operations that are available through the LightStep Application, as a JSON API.

This is different from the instrumentation APIs by which customers send Span data to LightStep. For documentation about adding instrumentation, see the OpenTracing Documentation, and the language-specific LightStep Tracer Documentation. For details about Satellite setup and configuration, see Install and Configure Satellites page.

Suggest Edits

Authorization

 

The LightStep Public API requires an API Key to be supplied as the Authorization header for all API requests, using the bearer identifier. For more information on setting up an API key, please see Create and Manage API Keys

curl -H "Authorization: bearer <api-key>" --request <HTTP method> --url <URL>
Suggest Edits

JSON Structure

 

The LightStep API is based on the JSON API standard. As such, all non-error responses are formatted as a JSON document with a top-level data field.

{
  "data": {
    "type": "search",
    "id": "754C34A",
    "attributes": {
      "name": "Error Prone API",
        "query": "component:\"client\" operation:\"/api/v1/error_prone_1\" "
    },
    "relationships": {
      "project": {
        "links": {
          "related": "https://api.lightstep.com/public/v0.1/LightStep/projects/lightstep-demo/searches"
        }
      }
    }
  }
}
Suggest Edits

Rate Limits

 

LightStep enforces a rate limit of 100 requests/second per organization for the Public API. This applies to all API endpoints in aggregate. If you have a need to exceed this limit, please contact your LightStep Customer Success team.

 
Suggest Edits

List Projects

Returns information about all projects in an organization

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

Response

JSON-formatted metadata about all projects in the organization

No organization parameter provided

The API Key does not provide access to this resource, or the organization name does not exist

Suggest Edits

Get Project

Returns information about a specific project

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

Response

JSON-formatted metadata about all projects in the project

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Suggest Edits

Conditions

 
Suggest Edits

List Conditions

Returns information about all conditions in a project

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/conditions
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/conditions
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/conditions' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/conditions")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/conditions");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/conditions"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

Response

JSON-formatted metadata about all conditions in the project

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Suggest Edits

Create Condition

Creates a new condition

 

Header Auth

 Authentication is required for this endpoint.
posthttps://api.lightstep.com/public/v0.1/organization/projects/project/conditions
curl --request POST \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/conditions
var request = require("request");

var options = { method: 'POST',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/conditions' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/conditions")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.lightstep.com/public/v0.1/organization/projects/project/conditions");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/conditions"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

Body Params

data
object
 
data.attributes
object
 
data.attributes.custom-data
object
 
data.attributes.eval-window-ms
int64
data.attributes.expression
string
data.attributes.name
string
data.id
string

Unique identifier of the described resource
Do not populate this field for POST or PATCH requests, use path parameters instead

data.relationships
object
 
data.relationships.search
object
 
data.relationships.search.id
string
required

Unique identifier of the related resource

data.relationships.search.type
string
required

Valid values:
Stream resource: "search"
Condition resource: "condition"

data.type
string
required

Valid values:
Stream operations: "search"
Condition operations: "condition"

Response

The condition was created successfully

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Suggest Edits

Get Condition

Returns information about a specific condition

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

condition-id
string
required

Condition identifier

Response

JSON-formatted data about the given condition

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

The condition identifier is not valid

Suggest Edits

Delete Condition

Deletes an existing condition

 

Header Auth

 Authentication is required for this endpoint.
deletehttps://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id
curl --request DELETE \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id
var request = require("request");

var options = { method: 'DELETE',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id"

response = requests.request("DELETE", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

condition-id
string
required

Identifier of the condition to delete

Response

Condition was successfully deleted

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Suggest Edits

Update Condition

Modifies the settings for an existing condition

 

Header Auth

 Authentication is required for this endpoint.
patchhttps://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id
curl --request PATCH \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id
var request = require("request");

var options = { method: 'PATCH',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Patch.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PATCH", "https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id"

response = requests.request("PATCH", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

condition-id
string
required

Identifier of the condition to modify

Body Params

data
object
 
data.attributes
object
 
data.attributes.custom-data
object
 
data.attributes.eval-window-ms
int64
data.attributes.expression
string
data.attributes.name
string
data.id
string

Unique identifier of the described resource
Do not populate this field for POST or PATCH requests, use path parameters instead

data.relationships
object
 
data.relationships.search
object
 
data.relationships.search.id
string
required

Unique identifier of the related resource

data.relationships.search.type
string
required

Valid values:
Stream resource: "search"
Condition resource: "condition"

data.type
string
required

Valid values:
Stream operations: "search"
Condition operations: "condition"

Response

The condition was updated successfully

One or more parameter(s) are not valid

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Condition identifier not found

Suggest Edits

Get Condition Status

Returns status information about a specific condition

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id/status
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id/status
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id/status' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id/status")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id/status");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/conditions/condition-id/status"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

condition-id
string
required

Condition identifier

Response

JSON-formatted data about the status of the given condition

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

The condition identifier is not valid

Suggest Edits

List Conditions for Stream

Returns information about all conditions in a specific stream

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id/conditions
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id/conditions
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id/conditions' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id/conditions")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id/conditions");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id/conditions"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

stream-id
string
required

Stream identifier

Response

JSON-formatted metadata about all conditions in the given stream

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

The stream identifier is not valid

Suggest Edits

Dashboards

 
Suggest Edits

Delete Dashboard

Deletes an existing dashboard. Does not delete any streams.

 

Header Auth

 Authentication is required for this endpoint.
deletehttps://api.lightstep.com/public/v0.1/organization/projects/project/dashboard/dashboard-id
curl --request DELETE \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/dashboard/dashboard-id
var request = require("request");

var options = { method: 'DELETE',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/dashboard/dashboard-id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/dashboard/dashboard-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "https://api.lightstep.com/public/v0.1/organization/projects/project/dashboard/dashboard-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/dashboard/dashboard-id"

response = requests.request("DELETE", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

dashboard-id
string
required

Identifier of the dashboard to delete

Response

Dashboard was successfully deleted

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Dashboard identifier not found

Suggest Edits

List Dashboards

Returns information about all dashboards in a project

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/dashboards
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

Response

JSON-formatted metadata about all dashboards in the project

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Suggest Edits

Create Dashboard

Creates a new dashboard, with inline stream definitions. Automatically creates the necessary streams if they do not already exist.

 

Header Auth

 Authentication is required for this endpoint.
posthttps://api.lightstep.com/public/v0.1/organization/projects/project/dashboards
curl --request POST \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards
var request = require("request");

var options = { method: 'POST',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

Body Params

data
object
 
data.attributes
object
 
data.attributes.name
string
required

Name for the dashboard (free-form string)

data.attributes.searches
array of objects

Searches to be added to the dashboard. If the search exists already, include the ID.
If it does not, do not include an ID. A new search will be created

attributes 
id
links 
relationships 
type
data.id
string

Unique identifier of the described resource
Do not populate this field for POST or PATCH requests, use path parameters instead

data.relationships
object
 
data.relationships.project
object
 
data.relationships.project.links
object
 
data.type
string
required

Valid values:
Stream operations: "search"
Condition operations: "condition"

Response

The dashboard was created (or updated) successfully

No organization parameter provided

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Suggest Edits

Get Dashboard

Returns complete information about a specific dashboard, including stream definitions.

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/dashboards/dashboard-id
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards/dashboard-id
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards/dashboard-id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards/dashboard-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards/dashboard-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards/dashboard-id"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

dashboard-id
string
required

Dashboard identifier

Response

JSON-formatted metadata about the dashboard

The API Key does not provide access to this resource, or the organization name does not exist

Project name or dashboard ID is not found

Suggest Edits

Update Dashboard

Updates the dashboard with a new name (if applicable), and replaces the set of streams on the dashboard. Streams that are removed from the dashboard will not be deleted from the project.

 

Header Auth

 Authentication is required for this endpoint.
patchhttps://api.lightstep.com/public/v0.1/organization/projects/project/dashboards/dashboard-id
curl --request PATCH \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards/dashboard-id
var request = require("request");

var options = { method: 'PATCH',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards/dashboard-id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards/dashboard-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Patch.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PATCH", "https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards/dashboard-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/dashboards/dashboard-id"

response = requests.request("PATCH", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

dashboard-id
string
required

Identifier of the dashboard to modify

Body Params

data
object
 
data.attributes
object
 
data.attributes.name
string
required

Name for the dashboard (free-form string)

data.attributes.searches
array of objects

Searches to be added to the dashboard. If the search exists already, include the ID.
If it does not, do not include an ID. A new search will be created

attributes 
id
links 
relationships 
type
data.id
string

Unique identifier of the described resource
Do not populate this field for POST or PATCH requests, use path parameters instead

data.relationships
object
 
data.relationships.project
object
 
data.relationships.project.links
object
 
data.type
string
required

Valid values:
Stream operations: "search"
Condition operations: "condition"

Response

The dashboard was updated successfully

One or more parameter(s) are not valid

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Dashboard identifier not found

 
Suggest Edits

List Services

Returns all reporting services for a project

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/directory/services
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/directory/services
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/directory/services' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/directory/services")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/directory/services");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/directory/services"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

Query Params

limit
integer

Service object count limit in paginated response

offset
integer

Service object offset in paginated response

Response

JSON-formatted metadata about all services reporting in the project

One or more parameter(s) are not valid

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

 
Suggest Edits

List Streams

Returns information about all streams in a project

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/searches
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/searches
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/searches' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/searches")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/searches");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/searches"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

Response

JSON-formatted metadata about all streams in the project

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Suggest Edits

Create Stream

Creates a new stream (or updates an existing stream if the query is identical)

 

Header Auth

 Authentication is required for this endpoint.
posthttps://api.lightstep.com/public/v0.1/organization/projects/project/searches
curl --request POST \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/searches
var request = require("request");

var options = { method: 'POST',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/searches' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/searches")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.lightstep.com/public/v0.1/organization/projects/project/searches");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/searches"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

Body Params

data
object
 
data.attributes
object
 
data.attributes.custom_data
object

Custom JSON data that can be set by an end user and will be included in notifications.

 
data.attributes.name
string
required

Name for the stream (free-form string)

data.attributes.query
string

The query string itself (see Query Syntax section for details).
Once a search has been created, this string cannot be modified.
Required when creating new streams.

data.id
string

Unique identifier of the described resource
Do not populate this field for POST or PATCH requests, use path parameters instead

data.type
string
required

Valid values:
Stream operations: "search"
Condition operations: "condition"

Response

The stream was created (or updated) successfully

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Suggest Edits

Get Stream

Returns information about a specific stream

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

stream-id
string
required

Stream identifier

Response

JSON-formatted data about the given stream

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

The stream identifier is not valid

Suggest Edits

Delete Stream

Deletes an existing stream

 

Header Auth

 Authentication is required for this endpoint.
deletehttps://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id
curl --request DELETE \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id
var request = require("request");

var options = { method: 'DELETE',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id"

response = requests.request("DELETE", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

stream-id
string
required

Identifier of the stream to delete

Response

Stream was successfully deleted

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Suggest Edits

Update Stream

Modifies the settings for an existing stream

 

Header Auth

 Authentication is required for this endpoint.
patchhttps://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id
curl --request PATCH \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id
var request = require("request");

var options = { method: 'PATCH',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Patch.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PATCH", "https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id"

response = requests.request("PATCH", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

stream-id
string
required

Identifier of the stream to modify

Body Params

data
object
 
data.attributes
object
 
data.attributes.custom_data
object

Custom JSON data that can be set by an end user and will be included in notifications.

 
data.attributes.name
string
required

Name for the stream (free-form string)

data.attributes.query
string

The query string itself (see Query Syntax section for details).
Once a search has been created, this string cannot be modified.
Required when creating new streams.

data.id
string

Unique identifier of the described resource
Do not populate this field for POST or PATCH requests, use path parameters instead

data.type
string
required

Valid values:
Stream operations: "search"
Condition operations: "condition"

Response

The stream was created (or updated) successfully

One or more parameter(s) are not valid

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Stream identifier not found

Suggest Edits

Timeseries

Returns timeseries data for a stream

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id/timeseries
curl --request GET \
  --url 'https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id/timeseries?oldest-time=oldest-time&youngest-time=youngest-time&resolution-ms=60000'
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id/timeseries',
  qs:
   { 'oldest-time': 'oldest-time',
     'youngest-time': 'youngest-time',
     'resolution-ms': '60000' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id/timeseries?oldest-time=oldest-time&youngest-time=youngest-time&resolution-ms=60000")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id/timeseries?oldest-time=oldest-time&youngest-time=youngest-time&resolution-ms=60000");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/searches/stream-id/timeseries"

querystring = {"oldest-time":"oldest-time","youngest-time":"youngest-time","resolution-ms":"60000"}

response = requests.request("GET", url, params=querystring)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the project that contains the stream

stream-id
string
required

The ID of the stream to fetch timeseries data for

Query Params

oldest-time
date-time
required

Beginning of the time range being queried, e.g. 2018-01-20T02:30:00-08:00

youngest-time
date-time
required

End of the time range being queried, e.g. 2018-01-22T06:30:00-08:00

resolution-ms
integer
required

Length of time represented by each "point" (time window) in the timeseries, in milliseconds. The minimum value (highest resolution data) for this parameter is 60000 (representing 1 minute of data per point). Larger values will result in latency distributions being merged.

include-exemplars
integer

Boolean value that indicates whether the response should include example trace information for each time window. 0=false, 1=true

include-ops-counts
integer

Indicates whether the response should specify the number of spans represented by each time window. 0=false, 1=true

include-error-counts
integer

Indicates whether the response should specify the number of spans with errors in each time window. 0=false, 1=true

percentile
array of numbers

A (possibly) repeated field that indicates what latency percentiles to return for each time window, if any. Valid for values (0, 99.99].

Response

JSON representation of a timeseries

One or more of the request parameter(s) is not valid

The API Key does not provide access to this resource

Project name is not found

Stream ID is not valid, or other internal error

Suggest Edits

Snapshots

 
Suggest Edits

Create Snapshot

Creates a new Snapshot for the provided query

 

Header Auth

 Authentication is required for this endpoint.
posthttps://api.lightstep.com/public/v0.1/organization/projects/project/snapshots
curl --request POST \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/snapshots
var request = require("request");

var options = { method: 'POST',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/snapshots' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/snapshots")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.lightstep.com/public/v0.1/organization/projects/project/snapshots");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/snapshots"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

Body Params

data
object
 
data.attributes
object
 
data.attributes.query
string
required

The query string itself (see Query Syntax section for details).

Response

The snapshot was created successfully

Query parameters invalid

The API Key does not provide access to this resource, or the organization name does not exist

Project name is not found

Snapshot creation exceeded rate limit

Suggest Edits

Stored Traces

Returns complete traces that have already been assembled and stored

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/stored-traces
curl --request GET \
  --url 'https://api.lightstep.com/public/v0.1/organization/projects/project/stored-traces?span-id=span-id'
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/stored-traces',
  qs: { 'span-id': 'span-id' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/stored-traces?span-id=span-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/stored-traces?span-id=span-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/stored-traces"

querystring = {"span-id":"span-id"}

response = requests.request("GET", url, params=querystring)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the project that the trace belongs to

Query Params

span-id
string
required

Key that uniquely identifies a stored trace

Response

JSON representation of a stored trace

Missing required parameter

No stored traces found

Suggest Edits

List Workflow Links

Returns information on all workflow link definitions within a project

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/wf_links
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

Response

JSON-formatted metadata about all workflow link definitions in the project

The API Key does not provide access to this resource

Organization or project not found

Suggest Edits

Create Workflow Link

Creates a new workflow link. Links within a project must have a unique combination of Name and URL. Admin or Member privileges are required to created workflow links.

 

Header Auth

 Authentication is required for this endpoint.
posthttps://api.lightstep.com/public/v0.1/organization/projects/project/wf_links
curl --request POST \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links
var request = require("request");

var options = { method: 'POST',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

Body Params

data
object
 
data.attributes
object
 
data.attributes.created_by
string
data.attributes.last_clicked_micros
int64
data.attributes.last_edited_micros
int64
data.attributes.name
string
data.attributes.rules
object
 
data.attributes.url
string
data.id
string

Unique identifier of the described resource
Do not populate this field for POST or PATCH requests, use path parameters instead

data.relationships
object
 
data.relationships.project
object
 
data.relationships.project.links
object
 
data.type
string
required

Valid values:
Stream operations: "search"
Condition operations: "condition"

Response

The workflow link was created successfully

Bad request - could not decode JSON request, or a parameter (name, URL, or Rules) is missing

The API Key does not provide access to this resource

Unsupported request to create resource - links within the same project cannot have the same name and URL.

Organization or project not found

Suggest Edits

Get Workflow Link

Returns information on a specific workflow link definition within a project.

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

link-id
string
required

Workflow Link identifier

Response

JSON-formatted metadata about the workflow link

The API Key does not provide access to this resource

Organization, project name, or workflow link ID is not found

Suggest Edits

Delete Workflow Link

Deletes an existing workflow link.

 

Header Auth

 Authentication is required for this endpoint.
deletehttps://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id
curl --request DELETE \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id
var request = require("request");

var options = { method: 'DELETE',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("DELETE", "https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id"

response = requests.request("DELETE", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

link-id
string
required

Identifier of the workflow link to delete

Response

The workflow link was successfully deleted

The API Key does not provide access to this resource

Organization, project name, or workflow link ID is not found

Suggest Edits

Update Workflow Link

Updates the workflow link with a new name or URL (if applicable), or replaces the set of rules on the workflow link. If a non-empty parameter (i.e., name, URL, or Rules) is provided, the field will will be overwritten with the new value. Links within a project must have a unique combination of name and URL. Admin or Member privileges are required to created workflow links.

 

Header Auth

 Authentication is required for this endpoint.
patchhttps://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id
curl --request PATCH \
  --url https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id
var request = require("request");

var options = { method: 'PATCH',
  url:
   'https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Patch.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("PATCH", "https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/projects/project/wf_links/link-id"

response = requests.request("PATCH", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

project
string
required

Name of the customer project

link-id
string
required

Identifier of the workflow link to modify

Body Params

data
object
 
data.attributes
object
 
data.attributes.created_by
string
data.attributes.last_clicked_micros
int64
data.attributes.last_edited_micros
int64
data.attributes.name
string
data.attributes.rules
object
 
data.attributes.url
string
data.id
string

Unique identifier of the described resource
Do not populate this field for POST or PATCH requests, use path parameters instead

data.relationships
object
 
data.relationships.project
object
 
data.relationships.project.links
object
 
data.type
string
required

Valid values:
Stream operations: "search"
Condition operations: "condition"

Response

The workflow link was updated successfully

Bad request - could not decode JSON request

The API Key does not provide access to this resource

Unsupported request to create resource - links within the same project cannot have the same name and URL.

Organization, project name, or workflow link ID is not found

Suggest Edits

Read Test

A read-only endpoint for testing your authentication key.

 

Header Auth

 Authentication is required for this endpoint.
gethttps://api.lightstep.com/public/v0.1/organization/test
curl --request GET \
  --url https://api.lightstep.com/public/v0.1/organization/test
var request = require("request");

var options = { method: 'GET',
  url:
   'https://api.lightstep.com/public/v0.1/organization/test' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/test")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("GET", "https://api.lightstep.com/public/v0.1/organization/test");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/test"

response = requests.request("GET", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

Response

OK!

Unauthorized

Suggest Edits

Write Test

A write endpoint for testing your authentication key.

 

Header Auth

 Authentication is required for this endpoint.
posthttps://api.lightstep.com/public/v0.1/organization/test
curl --request POST \
  --url https://api.lightstep.com/public/v0.1/organization/test
var request = require("request");

var options = { method: 'POST',
  url:
   'https://api.lightstep.com/public/v0.1/organization/test' };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});
require 'uri'
require 'net/http'

url = URI("https://api.lightstep.com/public/v0.1/organization/test")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)

response = http.request(request)
puts response.read_body
var data = JSON.stringify(false);

var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function () {
  if (this.readyState === this.DONE) {
    console.log(this.responseText);
  }
});

xhr.open("POST", "https://api.lightstep.com/public/v0.1/organization/test");

xhr.send(data);
import requests

url = "https://api.lightstep.com/public/v0.1/organization/test"

response = requests.request("POST", url)

print(response.text)
A binary file was returned

You couldn't be authenticated

Try the API to see results

Path Params

organization
string
required

Name of the customer organization

Response

OK!

Unauthorized

Suggest Edits

Query Syntax

 

A query is a set of <key>:<value> pairs that apply to span attributes. A span will be selected by the query only if it matches all the query terms.

There are three supported keys:

  • component:<value> (optional, can only include once)
  • operation:<value> (optional, can only include once)
  • tag:<name>=<value> (optional, can repeat this key as many times as you like)
component:"api-server" tag:"error"="true" tag:"release_tag"="ef11373b5c81f552"

When constructing the JSON request for a query, the double quotes around values must be escaped:

{
  "data":{
    "type": "search",
    "attributes":{
      "name": "API errors from January release",
      "query": "component:\"api-server\" tag:\"error\"=\"true\" tag:\"release_tag\"=\"ef11373b5c81f552\"
    }
  }
}
Suggest Edits

Using Postman with LightStep

 

This section shows how to use Postman to make API calls to LightStep.

Prerequisites

  • An active LightStep organization and project
  • Access to your LightStep Public API Keys
  • The Postman client installed
  • Basic knowledge of APIs and JSON

Setup

Import the LightStep Postman Collection

  1. Download the LightStep Postman Collection (pre-configured API templates)
    A Postman Collection lets you group individual requests together for easy editing and re-use.
  2. Open Postman. Click on File > Import or click on the Import button in the upper left of Postman.
  3. Select the lightstep_postman_collection.json file downloaded in Step 1.
Importing LightStep collection in Postman.

Importing LightStep collection in Postman.

The LightStep API is now available as a collection in Postman. A full list of available LightStep API calls is structured by folder in the left pane of Postman.

Note: The following section is required for the API calls to work.

Setup API keys in Postman

The collection uses Postman Environment variables to set API keys and other values that might remain static most of the time, for example organization and project.

Follow these steps to setup your API keys for your collection.

  1. Click the Manage Environments gear icon in the upper right corner of Postman.
  2. Click Add and enter an Environment Name. For example, you can name your environment LightStep or LightStep-YourOrgName.
  3. In the table, add the variable lightstep_api_key. In the Current Value column, enter your actual LightStep API Key.
  4. If you have access to multiple organizations and projects, you can also choose to add the organization or project variables and/or setup multiple environments.
  5. Once an Environment is set up, you can choose it from the dropdown in the upper right corner of Postman.
Setting up Environments in Postman.

Setting up Environments in Postman.

Use the Collection

After setup is complete, you are ready to begin making API calls. In the LightStep Public API collection in the left sidebar, there are multiple subfolders for each type of API category listed in the LightStep Public API Reference. You can test your API access by using the API calls under the Test folder.

Testing LightStep API with Postman.

Testing LightStep API with Postman.

Params

Some API calls include path, query, or body parameters. When you select an API call from the left sidebar, you can edit the parameters in the tab that opens on the right before sending the API call. Refer to the LightStep Public API Reference for more details about each API call and its parameters.

Editing Path and Query parameters for an API call in Postman.

Editing Path and Query parameters for an API call in Postman.

Editing Body Parameters for an API call in Postman.

Editing Body Parameters for an API call in Postman.

For more information on using Postman, refer to the guides here.