influxdb/http/swagger.yml

7068 lines
194 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

openapi: "3.0.0"
info:
title: Influx API Service
version: 0.1.0
servers:
- url: /api/v2
paths:
/signin:
post:
summary: Exchange basic auth credentials for session
security:
- basicAuth: []
parameters:
- $ref: '#/components/parameters/TraceSpan'
responses:
'204':
description: succesfully authenticated
default:
description: unsuccessful authentication
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/signout:
post:
summary: Expire the current session
parameters:
- $ref: '#/components/parameters/TraceSpan'
responses:
'204':
description: session successfully expired
default:
description: unsuccessful session exipry
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/:
get:
summary: Map of all top level routes available
parameters:
- $ref: '#/components/parameters/TraceSpan'
responses:
default:
description: All routes
content:
application/json:
schema:
$ref: "#/components/schemas/Routes"
/protos:
get:
tags:
- Protos
summary: List of available protos (templates of tasks/dashboards/etc)
parameters:
- $ref: '#/components/parameters/TraceSpan'
responses:
'200':
description: List of protos
content:
application/json:
schema:
$ref: "#/components/schemas/Protos"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/protos/{protoID}/dashboards:
post:
tags:
- Protos
summary: Create instance of a proto dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: protoID
schema:
type: string
required: true
description: ID of proto
requestBody:
description: organization that the dashboard will be created as
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/CreateProtoResourcesRequest"
responses:
'201':
description: List of dashboards that was created
content:
application/json:
schema:
$ref: "#/components/schemas/Dashboards"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/setup:
get:
tags:
- Setup
summary: check if database has default user, org, bucket created, returns true if not.
parameters:
- $ref: '#/components/parameters/TraceSpan'
responses:
'200':
description:
allowed true or false
content:
application/json:
schema:
$ref: "#/components/schemas/IsOnboarding"
post:
tags:
- Setup
summary: post onboarding request, to setup initial user, org and bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: source to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/OnboardingRequest"
responses:
'201':
description: Created default user, bucket, org
content:
application/json:
schema:
$ref: "#/components/schemas/OnboardingResponse"
/telegrafs:
get:
tags:
- Telegrafs
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: orgID
description: specifies the organization of the resource
required: true
schema:
type: string
responses:
'200':
description: a list of telegraf configs
content:
application/json:
schema:
$ref: "#/components/schemas/Telegrafs"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Telegrafs
summary: Create a telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: telegraf config to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/TelegrafRequest"
responses:
'201':
description: Telegraf config created
content:
application/json:
schema:
$ref: "#/components/schemas/Telegraf"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/telegrafs/{telegrafID}':
get:
tags:
- Telegrafs
summary: Retrieve a telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of telegraf config
responses:
'200':
description: telegraf config details
content:
application/json:
schema:
$ref: "#/components/schemas/Telegraf"
application/toml:
example: "[agent]\ninterval = \"10s\""
schema:
type: string
application/octet-stream:
example: "[agent]\ninterval = \"10s\""
schema:
type: string
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
put:
tags:
- Telegrafs
summary: Update a telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of telegraf config
requestBody:
description: telegraf config update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/TelegrafRequest"
responses:
'200':
description: An updated telegraf
content:
application/json:
schema:
$ref: "#/components/schemas/Telegraf"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/telegrafs/{telegrafID}/labels':
get:
tags:
- Telegrafs
summary: list all labels for a telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of the telegraf config
responses:
'200':
description: a list of all labels for a telegraf config
content:
application/json:
schema:
type: object
properties:
labels:
$ref: "#/components/schemas/Labels"
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Telegrafs
summary: add a label to a telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of the telegraf config
requestBody:
description: label to add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Label"
responses:
'200':
description: a list of all labels for a telegraf config
content:
application/json:
schema:
type: object
properties:
labels:
$ref: "#/components/schemas/Labels"
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/telegrafs/{telegrafID}/labels/{label}':
delete:
tags:
- Telegrafs
summary: delete a label from a telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of the telegraf config
- in: path
name: label
schema:
type: string
required: true
description: the label name
responses:
'204':
description: delete has been accepted
'404':
description: telegraf config not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Telegrafs
summary: update a label from a telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of the telegraf config
- in: path
name: label
schema:
type: string
required: true
description: the label name
requestBody:
description: label update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Label"
responses:
'200':
description: updated successfully
'404':
description: telegraf config not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/telegrafs/{telegrafID}/members':
get:
tags:
- Users
- Telegrafs
summary: List all users with member privileges for a telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of the telegraf config
responses:
'200':
description: a list of telegraf config members
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMembers"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Telegrafs
summary: Add telegraf config member
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of the telegraf config
requestBody:
description: user to add as member
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: member added to telegraf
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMember"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/telegrafs/{telegrafID}/members/{userID}':
delete:
tags:
- Users
- Telegrafs
summary: removes a member from a telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of member to remove
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of the telegraf
responses:
'204':
description: member removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/telegrafs/{telegrafID}/owners':
get:
tags:
- Users
- Telegrafs
summary: List all owners of a telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of the telegraf config
responses:
'200':
description: a list of telegraf config owners
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwners"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Telegrafs
summary: Add telegraf config owner
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of the telegraf config
requestBody:
description: user to add as owner
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: telegraf config owner added
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwner"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/telegrafs/{telegrafID}/owners/{userID}':
delete:
tags:
- Users
- Telegrafs
summary: removes an owner from a telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of owner to remove
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of the telegraf config
responses:
'204':
description: owner removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/scrapertargets:
get:
tags:
- ScraperTargets
summary: get all scraper targets
responses:
'200':
description: all scraper targets
content:
application/json:
schema:
$ref: "#/components/schemas/ScraperTargetResponses"
post:
summary: create a scraper target
tags:
- ScraperTargets
requestBody:
description: scraper target to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/ScraperTargetRequest"
responses:
'201':
description: scraper target created
content:
application/json:
schema:
$ref: "#/components/schemas/ScraperTargetResponse"
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/scrapertargets/{scraperTargetID}':
delete:
tags:
- ScraperTargets
summary: delete a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
required: true
schema:
type: string
description: id of the scraper target
responses:
'204':
description: scraper target deleted
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
summary: update a scraper target
tags:
- ScraperTargets
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
required: true
schema:
type: string
description: id of the scraper target
requestBody:
description: scraper target update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/ScraperTargetRequest"
responses:
'200':
description: scraper target updated
content:
application/json:
schema:
$ref: "#/components/schemas/ScraperTargetResponse"
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/macros:
get:
tags:
- Macros
summary: get all macros
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: org
required: true
schema:
type: string
description: filter macros to a specific organization name
responses:
'200':
description: all macros for an organization
content:
application/json:
schema:
$ref: "#/components/schemas/Macros"
'400':
description: invalid request
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
summary: create a macro
tags:
- Macros
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: macro to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Macro"
responses:
'201':
description: macro created
content:
application/json:
schema:
$ref: "#/components/schemas/Macro"
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/macros/{macroID}':
delete:
tags:
- Macros
summary: delete a macro
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: macroID
required: true
schema:
type: string
description: id of the macro
responses:
'204':
description: macro deleted
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
summary: update a macro
tags:
- Macros
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: macroID
required: true
schema:
type: string
description: id of the macro
requestBody:
description: macro update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Macro"
responses:
'200':
description: macro updated
content:
application/json:
schema:
$ref: "#/components/schemas/Macro"
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
put:
summary: replace a macro
tags:
- Macros
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: macroID
required: true
schema:
type: string
description: id of the macro
requestBody:
description: macro to replace
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Macro"
responses:
'200':
description: macro updated
content:
application/json:
schema:
$ref: "#/components/schemas/Macro"
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/write:
post:
tags:
- Write
summary: write time-series data into influxdb
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: header
name: Content-Encoding
description: when present, its value indicates to the database that compression is applied to the line-protocol body.
schema:
type: string
description: specifies that the line protocol in the body is encoded with gzip or not encoded with identity.
default: identity
enum:
- gzip
- identity
- in: header
name: Content-Type
description: Content-Type is used to indicate the format of the data sent to the server.
schema:
type: string
description: text/plain specifies the text line protocol; charset is assumed to be utf-8.
default: text/plain; charset=utf-8
enum:
- text/plain
- text/plain; charset=utf-8
- application/vnd.influx.arrow
- in: header
name: Content-Length
description: Content-Length is an entity header is indicating the size of the entity-body, in bytes, sent to the database. If the length is greater than the database max body configuration option, a 413 response is sent.
schema:
type: integer
description: The length in decimal number of octets.
- in: header
name: Accept
description: specifies the return content format.
schema:
type: string
description: return format of any errors
default: application/json
enum:
- application/json
- in: query
name: org
description: specifies the destination organization for writes
required: true
schema:
type: string
description: all points within batch are written to this organization.
- in: query
name: bucket
description: specifies the destination bucket for writes
required: true
schema:
type: string
description: all points within batch are written to this bucket.
- in: query
name: precision
description: specifies the precision for the unix timestamps within the body line-protocol
schema:
type: string
default: ns
description: specifies the unit of time
enum:
- ns
- us
- ms
- s
responses:
'204':
description: write data is correctly formatted and accepted for writing to the bucket.
'400':
description: line protocol poorly formed and no points were written. Response can be used to determine the first malformed line in the body line-protocol. All data in body was rejected and not written.
content:
application/json:
schema:
$ref: "#/components/schemas/LineProtocolError"
'401':
description: token does not have sufficient permissions to write to this organization and bucket or the organization and bucket do not exist.
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'403':
description: no token was sent and they are required.
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'413':
description: write has been rejected because the payload is too large. Error message returns max size supported. All data in body was rejected and not written.
content:
application/json:
schema:
$ref: "#/components/schemas/LineProtocolLengthError"
'429':
description: token is temporarily over quota. The Retry-After header describes when to try the write again.
headers:
Retry-After:
description: A non-negative decimal integer indicating the seconds to delay after the response is received.
schema:
type: integer
format: int32
'503':
description: server is temporarily unavailable to accept writes. The Retry-After header describes when to try the write again.
headers:
Retry-After:
description: A non-negative decimal integer indicating the seconds to delay after the response is received.
schema:
type: integer
format: int32
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/ready:
get:
tags:
- Ready
summary: Get the readiness of a instance at startup. Allow us to confirm the instance is prepared to accept requests.
parameters:
- $ref: '#/components/parameters/TraceSpan'
responses:
'200':
description: the instance is ready
content:
application/json:
schema:
$ref: "#/components/schemas/Check"
'503':
description: the instance is not ready yet
content:
application/json:
schema:
$ref: "#/components/schemas/Check"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/health:
get:
tags:
- Health
summary: Get the health of an instance anytime during execution. Allow us to check if the instance is still healthy.
parameters:
- $ref: '#/components/parameters/TraceSpan'
responses:
'200':
description: the instance is healthy
content:
application/json:
schema:
$ref: "#/components/schemas/Check"
'503':
description: the instance is unhealthy
content:
application/json:
schema:
$ref: "#/components/schemas/Check"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/sources:
post:
tags:
- Sources
summary: Creates a Source
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: source to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Source"
responses:
'201':
description: Created Source
content:
application/json:
schema:
$ref: "#/components/schemas/Source"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
get:
tags:
- Sources
summary: Get all sources
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: org
description: specifies the organization of the resource
required: true
schema:
type: string
responses:
'200':
description: all sources
content:
application/json:
schema:
$ref: "#/components/schemas/Sources"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/sources/{sourceID}:
patch:
tags:
- Sources
summary: Updates a Source
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: sourceID
schema:
type: string
required: true
description: ID of the source
requestBody:
description: source update
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Source"
responses:
'200':
description: Created Source
content:
application/json:
schema:
$ref: "#/components/schemas/Source"
'404':
description: source not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
get:
tags:
- Sources
summary: Get a source
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: sourceID
schema:
type: string
required: true
description: ID of the source
responses:
'200':
description: a source
content:
application/json:
schema:
$ref: "#/components/schemas/Source"
'404':
description: source not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/sources/{sourceID}/health:
get:
tags:
- Sources
summary: Get a sources health
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: sourceID
schema:
type: string
required: true
description: ID of the source
responses:
'200':
description: the source is healthy
content:
application/json:
schema:
$ref: "#/components/schemas/Check"
'503':
description: the source is not healthy
content:
application/json:
schema:
$ref: "#/components/schemas/Check"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/sources/{sourceID}/buckets:
get:
tags:
- Sources
- Buckets
summary: Get a sources buckets (will return dbrps in the form of buckets if it is a v1 source)
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: sourceID
schema:
type: string
required: true
description: ID of the source
- in: query
name: org
description: specifies the organization of the resource
required: true
schema:
type: string
responses:
'200':
description: a source
content:
application/json:
schema:
$ref: "#/components/schemas/Buckets"
'404':
description: source not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/views:
post:
tags:
- Views
summary: A view contains information about the visual representation of data
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: view to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/View"
responses:
'201':
description: Added view
content:
application/json:
schema:
$ref: "#/components/schemas/View"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
get:
tags:
- Views
summary: Get all views
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: org
description: specifies the organization of the resource
required: true
schema:
type: string
- in: query
name: type
description: filters results to a specified type. Can be used multiple times in a request, to filter to multiple types.
schema:
type: string
enum:
- "xy"
- "single-stat"
- "gauge"
- "table"
- "markdown"
- "log-viewer"
- "line-plus-single-stat"
responses:
'200':
description: all views
content:
application/json:
schema:
$ref: "#/components/schemas/Views"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/views/{viewID}':
get:
tags:
- Views
summary: Get a single View
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: viewID
schema:
type: string
required: true
description: ID of view to update
responses:
'200':
description: get a single view
content:
application/json:
schema:
$ref: "#/components/schemas/View"
'404':
description: view not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Views
summary: Update a single view
requestBody:
description: patching of a view
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/View"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: viewID
schema:
type: string
required: true
description: ID of view to update
responses:
'200':
description: Updated view
content:
application/json:
schema:
$ref: "#/components/schemas/View"
'404':
description: view not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
tags:
- Views
summary: Delete a view
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: viewID
schema:
type: string
required: true
description: ID of view to update
responses:
'204':
description: delete has been accepted
'404':
description: view not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/views/{viewID}/labels':
get:
tags:
- Views
summary: list all labels for a view
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: viewID
schema:
type: string
required: true
description: ID of the view
responses:
'200':
description: a list of all labels for a view
content:
application/json:
schema:
type: object
properties:
labels:
$ref: "#/components/schemas/Labels"
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Views
summary: add a label to a view
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: viewID
schema:
type: string
required: true
description: ID of the view
requestBody:
description: label to add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Label"
responses:
'200':
description: a list of all labels for a view
content:
application/json:
schema:
type: object
properties:
labels:
$ref: "#/components/schemas/Labels"
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/views/{viewID}/labels/{label}':
delete:
tags:
- Views
summary: delete a label from a view
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: viewID
schema:
type: string
required: true
description: ID of the view
- in: path
name: label
schema:
type: string
required: true
description: the label name
responses:
'204':
description: delete has been accepted
'404':
description: view not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Views
summary: update a label from a view
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: viewID
schema:
type: string
required: true
description: ID of the view
- in: path
name: label
schema:
type: string
required: true
description: the label name
requestBody:
description: label update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Label"
responses:
'200':
description: updated successfully
'404':
description: view not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/views/{viewID}/members':
get:
tags:
- Users
- Views
summary: List all view members
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: viewID
schema:
type: string
required: true
description: ID of the view
responses:
'200':
description: a list of users who have member privileges for a view
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMembers"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Views
summary: Add view member
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: viewID
schema:
type: string
required: true
description: ID of the view
requestBody:
description: user to add as member
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: added to view members
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMember"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/views/{viewID}/members/{userID}':
delete:
tags:
- Users
- Views
summary: removes a member from an view
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of member to remove
- in: path
name: viewID
schema:
type: string
required: true
description: ID of the view
responses:
'204':
description: member removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/views/{viewID}/owners':
get:
tags:
- Users
- Views
summary: List all view owners
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: viewID
schema:
type: string
required: true
description: ID of the view
responses:
'200':
description: a list of users who have owner privileges for a view
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwners"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Views
summary: Add view owner
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: viewID
schema:
type: string
required: true
description: ID of the view
requestBody:
description: user to add as owner
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: added to view owners
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwner"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/views/{viewID}/owners/{userID}':
delete:
tags:
- Users
- Views
summary: removes an owner from a view
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of owner to remove
- in: path
name: viewID
schema:
type: string
required: true
description: ID of the view
responses:
'204':
description: owner removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/dashboards:
post:
tags:
- Dashboards
summary: Create a dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: dashboard to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Dashboard"
responses:
'201':
description: Added dashboard
content:
application/json:
schema:
$ref: "#/components/schemas/Dashboard"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
get:
tags:
- Dashboards
summary: Get all dashboards
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: owner
description: specifies the owner id to return resources for
schema:
type: string
- in: query
name: sortBy
description: specifies the owner id to return resources for
schema:
type: string
enum:
- "ID"
- "CreatedAt"
- "UpdatedAt"
- in: query
name: id
description: ID list of dashboards to return. If both this and owner are specified, only ids is used.
schema:
type: array
items:
type: string
responses:
'200':
description: all dashboards
content:
application/json:
schema:
$ref: "#/components/schemas/Dashboards"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/dashboards/{dashboardID}':
get:
tags:
- Dashboards
summary: Get a single Dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of dashboard to update
responses:
'200':
description: get a single dashboard
content:
application/json:
schema:
$ref: "#/components/schemas/Dashboard"
'404':
description: dashboard not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Dashboards
summary: Update a single dashboard
requestBody:
description: patching of a dashboard
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Dashboard"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of dashboard to update
responses:
'200':
description: Updated dashboard
content:
application/json:
schema:
$ref: "#/components/schemas/Dashboard"
'404':
description: dashboard not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
tags:
- Dashboards
summary: Delete a dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of dashboard to update
responses:
'204':
description: delete has been accepted
'404':
description: dashboard not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/dashboards/{dashboardID}/cells':
put:
tags:
- Cells
- Dashboards
summary: Replace a dashboards cells
requestBody:
description: batch replaces all of a dashboards cells (this is used primarily to update the positional information of all of the cells)
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Cells"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of dashboard to update
responses:
'200':
description: Replaced dashboard cells
content:
application/json:
schema:
$ref: "#/components/schemas/Dashboard"
'404':
description: dashboard not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Cells
- Dashboards
summary: Create a dashboard cell
requestBody:
description: cell that will be added
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/CreateCell"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of dashboard to update
responses:
'201':
description: Cell successfully added
content:
application/json:
schema:
$ref: "#/components/schemas/Cell"
'404':
description: dashboard not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/dashboards/{dashboardID}/cells/{cellID}':
patch:
tags:
- Cells
- Dashboards
summary: Update the non positional information related to a cell (because updates to a single cells positional data could cause grid conflicts)
requestBody:
description: updates the non positional information related to a cell
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/CellUpdate"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of dashboard to update
- in: path
name: cellID
schema:
type: string
required: true
description: ID of cell to update
responses:
'200':
description: Updated dashboard cell
content:
application/json:
schema:
$ref: "#/components/schemas/Cell"
'404':
description: cell or dashboard not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
tags:
- Cells
- Dashboards
summary: Delete a dashboard cell
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of dashboard to delte
- in: path
name: cellID
schema:
type: string
required: true
description: ID of cell to delete
responses:
'204':
description: Cell successfully deleted
'404':
description: cell or dashboard not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/dashboards/{dashboardID}/cells/{cellID}/view':
get:
tags:
- Cells
- Dashboards
- Views
summary: Retrieve the view for a cell in a dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of dashboard
- in: path
name: cellID
schema:
type: string
required: true
description: ID of cell
responses:
'200':
description: A dashboard cells view
content:
application/json:
schema:
$ref: "#/components/schemas/View"
'404':
description: cell or dashboard not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Cells
- Dashboards
- Views
summary: Update the view for a cell
requestBody:
description: updates the view for a cell
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/View"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of dashboard to update
- in: path
name: cellID
schema:
type: string
required: true
description: ID of cell to update
responses:
'200':
description: Updated cell view
content:
application/json:
schema:
$ref: "#/components/schemas/View"
'404':
description: cell or dashboard not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/dashboards/{dashboardID}/labels':
get:
tags:
- Dashboards
summary: list all labels for a dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of the dashboard
responses:
'200':
description: a list of all labels for a dashboard
content:
application/json:
schema:
type: object
properties:
labels:
$ref: "#/components/schemas/Labels"
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Dashboards
summary: add a label to a dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of the dashboard
requestBody:
description: label to add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Label"
responses:
'200':
description: a list of all labels for a dashboard
content:
application/json:
schema:
type: object
properties:
labels:
$ref: "#/components/schemas/Labels"
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/dashboards/{dashboardID}/members':
get:
tags:
- Users
- Dashboards
summary: List all dashboard members
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of the dashboard
responses:
'200':
description: a list of users who have member privileges for a dashboard
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMembers"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Dashboards
summary: Add dashboard member
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of the dashboard
requestBody:
description: user to add as member
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: added to dashboard members
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMember"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/dashboards/{dashboardID}/members/{userID}':
delete:
tags:
- Users
- Dashboards
summary: removes a member from an dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of member to remove
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of the dashboard
responses:
'204':
description: member removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/dashboards/{dashboardID}/owners':
get:
tags:
- Users
- Dashboards
summary: List all dashboard owners
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of the dashboard
responses:
'200':
description: a list of users who have owner privileges for a dashboard
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwners"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Dashboards
summary: Add dashboard owner
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of the dashboard
requestBody:
description: user to add as owner
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: added to dashboard owners
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwner"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/dashboards/{dashboardID}/owners/{userID}':
delete:
tags:
- Users
- Dashboards
summary: removes an owner from an dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of owner to remove
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of the dashboard
responses:
'204':
description: owner removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/query/ast:
post:
description: analyzes flux query and generates a query specification.
tags:
- Query
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: header
name: Content-Type
schema:
type: string
enum:
- application/json
requestBody:
description: analyzed flux query to generate abstract syntax tree.
content:
application/json:
schema:
$ref: "#/components/schemas/LanguageRequest"
responses:
'200':
description: Abstract syntax tree of flux query.
content:
application/json: #TODO(goller): document the AST JSON schema
schema:
properties:
todo:
type: string # swagger editor was yelling at me here
default:
description: Any response other than 200 is an internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/query/spec:
post:
description: analyzes flux query and generates a query specification.
tags:
- Query
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: header
name: Content-Type
schema:
type: string
enum:
- application/json
requestBody:
description: analyzed flux query to generate specification.
content:
application/json:
schema:
$ref: "#/components/schemas/LanguageRequest"
responses:
'200':
description: Specification of flux query.
content:
application/json:
schema:
$ref: "#/components/schemas/QuerySpecification"
default:
description: Any response other than 200 is an internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/query/suggestions:
get:
tags:
- Query
parameters:
- $ref: '#/components/parameters/TraceSpan'
responses:
'200':
description: Suggestions for next functions in call chain
content:
application/json:
schema:
$ref: "#/components/schemas/FluxSuggestions"
default:
description: Any response other than 200 is an internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/query/suggestions/{name}:
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: name
schema:
type: string
required: true
description: name of branching suggestion
get:
tags:
- Query
responses:
'200':
description: Suggestions for next functions in call chain
content:
application/json:
schema:
$ref: "#/components/schemas/FluxSuggestions"
default:
description: Any response other than 200 is an internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/authorizations:
get:
tags:
- Authorizations
summary: List all authorizations
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: userID
schema:
type: string
description: filter authorizations belonging to a user id
- in: query
name: user
schema:
type: string
description: filter authorizations belonging to a user name
responses:
'200':
description: A list of authorizations
content:
application/json:
schema:
$ref: "#/components/schemas/Authorizations"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Authorizations
summary: Create an authorization
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: authorization to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Authorization"
responses:
'201':
description: authorization created
content:
application/json:
schema:
$ref: "#/components/schemas/Authorization"
'400':
description: invalid request
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/authorizations/{authID}:
get:
tags:
- Authorizations
summary: Retrieve an authorization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: authID
schema:
type: string
required: true
description: ID of authorization to get
responses:
'200':
description: authorization details
content:
application/json:
schema:
$ref: "#/components/schemas/Authorization"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Authorizations
summary: update authorization to be active or inactive. requests using an inactive authorization will be rejected.
requestBody:
description: authorization to update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Authorization"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: authID
schema:
type: string
required: true
description: ID of authorization to update
responses:
'200':
description: the active or inactie authorization
content:
application/json:
schema:
$ref: "#/components/schemas/Authorization"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
tags:
- Authorizations
summary: Delete a authorization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: authID
schema:
type: string
required: true
description: ID of authorization to delete
responses:
'204':
description: authorization deleted
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/query/analyze:
post:
tags:
- Query
summary: analyze an influxql or flux query
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: header
name: Content-Type
schema:
type: string
enum:
- application/json
requestBody:
description: flux or influxql query to analyze
content:
application/json:
schema:
$ref: "#/components/schemas/Query"
responses:
'200':
description: query analyze results. Errors will be empty if the query is valid.
content:
application/json:
schema:
$ref: "#/components/schemas/AnalyzeQueryResponse"
default:
description: internal server error
headers:
X-Influx-Error:
description: error string describing the problem
schema:
type: string
X-Influx-Reference:
description: reference code unique to the error type
schema:
type: integer
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/query:
get:
tags:
- Query
summary: query influx with specified return formatting. The spec and query fields are mutually exclusive.
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: org
description: specifies the organization of the resource
required: true
schema:
type: string
- in: query
name: query
description: query script to execute.
required: true
schema:
type: string
responses:
'200':
description: query results
content:
text/csv:
schema:
type: string
example: >
result,table,_start,_stop,_time,region,host,_value
mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:00Z,east,A,15.43
mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:20Z,east,B,59.25
mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:40Z,east,C,52.62
'400':
description: error processing query
headers:
X-Influx-Error:
description: error string describing the problem
schema:
type: string
X-Influx-Reference:
description: reference code unique to the error type
schema:
type: integer
content:
text/csv:
schema:
type: string
example: >
error,reference
Failed to parse query,897
default:
description: internal server error
headers:
X-Influx-Error:
description: error string describing the problem
schema:
type: string
X-Influx-Reference:
description: reference code unique to the error type
schema:
type: integer
content:
text/csv:
schema:
type: string
example: >
error,reference
Failed to parse query,897
post:
tags:
- Query
summary: query an influx
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: header
name: Accept
description: specifies the return content format. Each response content type will have its own dialect options.
schema:
type: string
description: return format of either CSV or Arrow buffers
default: text/csv
enum:
- text/csv
- application/vnd.influx.arrow
- in: header
name: Content-Type
schema:
type: string
enum:
- application/json
- in: query
name: org
description: specifies the name of the organization executing the query.
schema:
type: string
- in: query
name: orgID
description: specifies the ID of the organization executing the query.
schema:
type: string
requestBody:
description: flux query or specification to execute
content:
application/json:
schema:
$ref: "#/components/schemas/Query"
responses:
'200':
description: query results
content:
text/csv:
schema:
type: string
example: >
result,table,_start,_stop,_time,region,host,_value
mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:00Z,east,A,15.43
mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:20Z,east,B,59.25
mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:40Z,east,C,52.62
application/vnd.influx.arrow:
schema:
type: string
format: binary
'400':
description: error processing query
headers:
X-Influx-Error:
description: error string describing the problem
schema:
type: string
X-Influx-Reference:
description: reference code unique to the error type
schema:
type: integer
content:
text/csv:
schema:
type: string
example: >
error,reference
Failed to parse query,897
application/vnd.influx.arrow:
schema:
type: string
format: binary
default:
description: internal server error
headers:
X-Influx-Error:
description: error string describing the problem
schema:
type: string
X-Influx-Reference:
description: reference code unique to the error type
schema:
type: integer
content:
text/csv:
schema:
type: string
example: >
error,reference
Failed to parse query,897
application/vnd.influx.arrow:
schema:
type: string
format: binary
/buckets:
get:
tags:
- Buckets
summary: List all buckets
parameters:
- $ref: '#/components/parameters/TraceSpan'
- $ref: "#/components/parameters/Offset"
- $ref: "#/components/parameters/Limit"
- in: query
name: org
description: specifies the organization name of the resource
schema:
type: string
- in: query
name: orgID
description: specifies the organization id of the resource
schema:
type: string
- in: query
name: name
description: only returns buckets with the specified name
schema:
type: string
responses:
'200':
description: a list of buckets
content:
application/json:
schema:
$ref: "#/components/schemas/Buckets"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Buckets
summary: Create a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: bucket to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Bucket"
responses:
'201':
description: Bucket created
content:
application/json:
schema:
$ref: "#/components/schemas/Bucket"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/buckets/{bucketID}':
get:
tags:
- Buckets
summary: Retrieve a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of bucket to get
responses:
'200':
description: bucket details
content:
application/json:
schema:
$ref: "#/components/schemas/Bucket"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Buckets
summary: Update a bucket
requestBody:
description: bucket update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Bucket"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of bucket to update
responses:
'200':
description: An updated bucket
content:
application/json:
schema:
$ref: "#/components/schemas/Bucket"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
tags:
- Buckets
summary: Delete a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of bucket to delete
responses:
'204':
description: delete has been accepted
'404':
description: bucket not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/buckets/{bucketID}/labels':
get:
tags:
- Buckets
summary: list all labels for a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of the bucket
responses:
'200':
description: a list of all labels for a bucket
content:
application/json:
schema:
type: object
properties:
labels:
$ref: "#/components/schemas/Labels"
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Buckets
summary: add a label to a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of the bucket
requestBody:
description: label to add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Label"
responses:
'200':
description: a list of all labels for a bucket
content:
application/json:
schema:
type: object
properties:
labels:
$ref: "#/components/schemas/Labels"
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/buckets/{bucketID}/labels/{label}':
delete:
tags:
- Buckets
summary: delete a label from a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of the bucket
- in: path
name: label
schema:
type: string
required: true
description: the label name
responses:
'204':
description: delete has been accepted
'404':
description: bucket not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Buckets
summary: update a label from a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of the bucket
- in: path
name: label
schema:
type: string
required: true
description: the label name
requestBody:
description: label update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Label"
responses:
'200':
description: updated successfully
'404':
description: bucket not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/buckets/{bucketID}/members':
get:
tags:
- Users
- Buckets
summary: List all users with member privileges for a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of the bucket
responses:
'200':
description: a list of bucket members
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwners"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Buckets
summary: Add bucket member
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of the bucket
requestBody:
description: user to add as member
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: member added to bucket
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMember"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/buckets/{bucketID}/members/{userID}':
delete:
tags:
- Users
- Buckets
summary: removes a member from an bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of member to remove
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of the bucket
responses:
'204':
description: member removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/buckets/{bucketID}/owners':
get:
tags:
- Users
- Buckets
summary: List all owners of a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of the bucket
responses:
'200':
description: a list of bucket owners
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMembers"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Buckets
summary: Add bucket owner
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of the bucket
requestBody:
description: user to add as owner
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: bucket owner added
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwner"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/buckets/{bucketID}/owners/{userID}':
delete:
tags:
- Users
- Buckets
summary: removes an owner from a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of owner to remove
- in: path
name: bucketID
schema:
type: string
required: true
description: ID of the bucket
responses:
'204':
description: owner removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/orgs:
get:
tags:
- Organizations
summary: List all organizations
responses:
'200':
description: A list of organizations
content:
application/json:
schema:
$ref: "#/components/schemas/Organizations"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Organizations
summary: Create an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: organization to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Organization"
responses:
'201':
description: organization created
content:
application/json:
schema:
$ref: "#/components/schemas/Organization"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/orgs/{orgID}':
get:
tags:
- Organizations
summary: Retrieve an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of organization to get
responses:
'200':
description: organization details
content:
application/json:
schema:
$ref: "#/components/schemas/Organization"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Organizations
summary: Update an organization
requestBody:
description: organization update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Organization"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of organization to get
responses:
'200':
description: organization updated
content:
application/json:
schema:
$ref: "#/components/schemas/Organization"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
tags:
- Organizations
summary: Delete an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of organization to delete
responses:
'204':
description: delete has been accepted
'404':
description: organization not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/orgs/{orgID}/labels':
get:
tags:
- Organizations
summary: list all labels for a organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
responses:
'200':
description: a list of all labels for an organization
content:
application/json:
schema:
type: object
properties:
labels:
$ref: "#/components/schemas/Labels"
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Organizations
summary: add a label to an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
requestBody:
description: label to add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Label"
responses:
'200':
description: a list of all labels for an organization
content:
application/json:
schema:
type: object
properties:
labels:
$ref: "#/components/schemas/Labels"
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/orgs/{orgID}/labels/{label}':
delete:
tags:
- Organizations
summary: delete a label from an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
- in: path
name: label
schema:
type: string
required: true
description: the label name
responses:
'204':
description: delete has been accepted
'404':
description: organization not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Organizations
summary: update a label from an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
- in: path
name: label
schema:
type: string
required: true
description: the label name
requestBody:
description: label update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Label"
responses:
'200':
description: updated successfully
'404':
description: organization not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/orgs/{orgID}/secrets':
get:
tags:
- Secrets
- Organizations
summary: List all secret keys for an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
responses:
'200':
description: a list of all secret keys
content:
application/json:
schema:
$ref: "#/components/schemas/SecretKeys"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Secrets
- Organizations
summary: Apply patch to the provided secrets
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
requestBody:
description: secret key value pairs to update/add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Secrets"
responses:
'204':
description: keys successfully patched
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/orgs/{orgID}/secrets/delete': # had to make this because swagger wouldn't let me have a request body with a DELETE
post:
tags:
- Secrets
- Organizations
summary: delete provided secrets
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
requestBody:
description: secret key to deleted
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/SecretKeys"
responses:
'204':
description: keys successfully patched
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/orgs/{orgID}/members':
get:
tags:
- Users
- Organizations
summary: List all members of an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
responses:
'200':
description: a list of organization members
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwners"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Organizations
summary: Add organization member
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
requestBody:
description: user to add as member
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: added to organization created
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMember"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/orgs/{orgID}/members/{userID}':
delete:
tags:
- Users
- Organizations
summary: removes a member from an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of member to remove
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
responses:
'204':
description: member removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/orgs/{orgID}/owners':
get:
tags:
- Users
- Organizations
summary: List all owners of an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
responses:
'200':
description: a list of organization owners
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMembers"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Organizations
summary: Add organization owner
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
requestBody:
description: user to add as owner
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: organization owner added
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwner"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/orgs/{orgID}/owners/{userID}':
delete:
tags:
- Users
- Organizations
summary: removes an owner from an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of owner to remove
- in: path
name: orgID
schema:
type: string
required: true
description: ID of the organization
responses:
'204':
description: owner removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/tasks:
get:
tags:
- Tasks
summary: List tasks.
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: after
schema:
type: string
description: returns tasks after specified ID
- in: query
name: user
schema:
type: string
description: filter tasks to a specific user ID
- in: query
name: org
schema:
type: string
description: filter tasks to a specific organization ID
- in: query
name: limit
schema:
type: integer
minimum: 1
maximum: 500
default: 100
description: the number of tasks to return
responses:
'200':
description: A list of tasks
content:
application/json:
schema:
$ref: "#/components/schemas/Tasks"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Tasks
summary: Create a new task
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: task to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Task"
responses:
'201':
description: Task created
content:
application/json:
schema:
$ref: "#/components/schemas/Task"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}':
get:
tags:
- Tasks
summary: Retrieve an task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of task to get
responses:
'200':
description: task details
content:
application/json:
schema:
$ref: "#/components/schemas/Task"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Tasks
summary: Update a task
description: Update a task. This will cancel all queued runs.
requestBody:
description: task update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Task"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of task to get
responses:
'200':
description: task updated
content:
application/json:
schema:
$ref: "#/components/schemas/Task"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
tags:
- Tasks
summary: Delete a task
description: Deletes a task and all associated records
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of task to delete
responses:
'204':
description: task deleted
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}/runs':
get:
tags:
- Tasks
summary: Retrieve list of run records for a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of task to get runs for
- in: query
name: after
schema:
type: string
description: returns runs after specified ID
- in: query
name: limit
schema:
type: integer
minimum: 1
maximum: 100
default: 20
description: the number of runs to return
- in: query
name: afterTime
schema:
type: string
format: date-time
description: filter runs to those scheduled after this time, RFC3339
- in: query
name: beforeTime
schema:
type: string
format: date-time
description: filter runs to those scheduled before this time, RFC3339
responses:
'200':
description: a list of task runs
content:
application/json:
schema:
type: object
properties:
runs:
type: array
items:
$ref: "#/components/schemas/Run"
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Tasks
summary: manually start a run of the task now overriding the current schedule.
parameters:
- in: path
name: taskID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
$ref: "#/components/schemas/RunManually"
responses:
'201':
description: Run scheduled to start
content:
application/json:
schema:
$ref: "#/components/schemas/Run"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}/runs/{runID}':
get:
tags:
- Tasks
summary: Retrieve a single run record for a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: task ID
- in: path
name: runID
schema:
type: string
required: true
description: run ID
responses:
'200':
description: The run record
content:
application/json:
schema:
$ref: "#/components/schemas/Run"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}/runs/{runID}/retry':
post:
tags:
- Tasks
summary: Retry a task run
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: task ID
- in: path
name: runID
schema:
type: string
required: true
description: run ID
responses:
'200':
description: run that has been queued
content:
application/json:
schema:
$ref: "#/components/schemas/Run"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}/logs':
get:
tags:
- Tasks
summary: Retrieve all logs for a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of task to get logs for
responses:
'200':
description: all logs for a task
content:
application/json:
schema:
$ref: "#/components/schemas/Logs"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}/runs/{runID}/logs':
get:
tags:
- Tasks
summary: Retrieve all logs for a run
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of task to get logs for.
- in: path
name: runID
schema:
type: string
required: true
description: ID of run to get logs for.
responses:
'200':
description: all logs for a run
content:
application/json:
schema:
$ref: "#/components/schemas/Logs"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}/labels':
get:
tags:
- Tasks
summary: list all labels for a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of the task
responses:
'200':
description: a list of all labels for a task
content:
application/json:
schema:
type: object
properties:
labels:
type: array
items:
type: string
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Tasks
summary: add a label to a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of the task
requestBody:
description: label to add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Label"
responses:
'200':
description: a list of all labels for a task
content:
application/json:
schema:
type: object
properties:
labels:
type: array
items:
type: string
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}/labels/{label}':
delete:
tags:
- Tasks
summary: delete a label from a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of the task
- in: path
name: label
schema:
type: string
required: true
description: the label name
responses:
'204':
description: delete has been accepted
'404':
description: task not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Tasks
summary: update a label from a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of the task
- in: path
name: label
schema:
type: string
required: true
description: the label name
requestBody:
description: label update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Label"
responses:
'200':
description: updated successfully
'404':
description: task not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/me:
get:
tags:
- Users
summary: Returns currently authenticated user
parameters:
- $ref: '#/components/parameters/TraceSpan'
responses:
'200':
description: currently authenticated user
content:
application/json:
schema:
$ref: "#/components/schemas/User"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/me/password:
put:
tags:
- Users
summary: Update password
security:
- basicAuth: []
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: new password
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/PasswordResetBody"
responses:
'204':
description: password succesfully updated
default:
description: unsuccessful authentication
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}/members':
get:
tags:
- Users
- Tasks
summary: List all task members
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of the task
responses:
'200':
description: a list of users who have member privileges for a task
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMembers"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Tasks
summary: Add task member
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of the task
requestBody:
description: user to add as member
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: added to task members
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMember"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}/members/{userID}':
delete:
tags:
- Users
- Tasks
summary: removes a member from an task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of member to remove
- in: path
name: taskID
schema:
type: string
required: true
description: ID of the task
responses:
'204':
description: member removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}/owners':
get:
tags:
- Users
- Tasks
summary: List all task owners
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of the task
responses:
'200':
description: a list of users who have owner privileges for a task
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwners"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Tasks
summary: Add task owner
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: ID of the task
requestBody:
description: user to add as owner
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: added to task owners
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwner"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/taskID}/owners/{userID}':
delete:
tags:
- Users
- Tasks
summary: removes an owner from an task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of owner to remove
- in: path
name: taskID
schema:
type: string
required: true
description: ID of the task
responses:
'204':
description: owner removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/users:
get:
tags:
- Users
summary: List all users
parameters:
- $ref: '#/components/parameters/TraceSpan'
responses:
'200':
description: a list of users
content:
application/json:
schema:
$ref: "#/components/schemas/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
summary: Create a user
requestBody:
description: user to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/User"
responses:
'201':
description: user created
content:
application/json:
schema:
$ref: "#/components/schemas/User"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/users/{userID}':
get:
tags:
- Users
summary: Retrieve a user
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of user to get
responses:
'200':
description: user details
content:
application/json:
schema:
$ref: "#/components/schemas/User"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
tags:
- Users
summary: Update a user
requestBody:
description: user update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/User"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of user to update
responses:
'200':
description: user updated
content:
application/json:
schema:
$ref: "#/components/schemas/User"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
tags:
- Users
summary: deletes a user
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of user to delete
responses:
'204':
description: user deleted
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/users/{userID}/password':
put:
tags:
- Users
summary: Update password
security:
- basicAuth: []
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of the user
requestBody:
description: new password
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/PasswordResetBody"
responses:
'200':
description: user details
content:
application/json:
schema:
$ref: "#/components/schemas/User"
default:
description: unsuccessful authentication
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
components:
parameters:
Offset:
in: query
name: offset
required: false
schema:
type: integer
minimum: 0
Limit:
in: query
name: limit
required: false
schema:
type: integer
minimum: 1
maximum: 100
default: 20
Descending:
in: query
name: descending
required: false
schema:
type: boolean
default: false
SortBy:
in: query
name: sortBy
required: false
schema:
type: string
TraceSpan:
in: header
name: Zap-Trace-Span
description: OpenTracing span context
example:
trace_id: '1'
span_id: '1'
baggage:
key: value
required: false
schema:
type: string
schemas:
LanguageRequest:
description: flux query to be analyzed.
type: object
required:
- query
properties:
query:
description: flux query script to be analyzed
type: string
Query:
description: query influx with specified return formatting. The spec and query fields are mutually exclusive.
type: object
required:
- query
properties:
query:
description: query script to execute.
type: string
spec:
$ref: "#/components/schemas/QuerySpecification"
type:
description: type of query
type: string
default: flux
enum:
- flux
- influxql
db:
description: required for influxql type queries
type: string
rp:
description: required for influxql type queries
type: string
cluster:
description: required for influxql type queries
type: string
dialect:
$ref: "#/components/schemas/Dialect"
QuerySpecification:
description: consists of a set of operations and a set of edges between those operations to instruct the query engine to operate.
type: object
properties:
operations:
type: array
items:
type: object
properties:
kind:
description: name of the operation to perform
type: string
id:
description: identifier for this operation; it must be unique per query specification; used in edges
type: string
spec:
description: set of properties that specify details of the operation. These vary by the kind of operation.
type: object
edges:
description: list of declaring a parent child id relationship between operations
type: array
items:
type: object
properties:
parent:
description: id of parent node of child within graph of opertions
type: string
child:
description: id of child node of parent within the graph of operations
type: string
resources:
description: optional set of contraints on the resources the query can consume
type: object
properties:
priority:
description: priority of the query
oneOf:
- type: string
description: lower value will move to the front of the priority queue
pattern: '^\d+$'
- type: string
description: constants to represent the extreme high and low priorities; high is effectively 0.
enum:
- high
- low
concurrency_quota:
description: number of concurrent workers allowed to process this query; 0 indicates the planner can pick the optimal concurrency.
type: integer
default: 0
memory_bytes_quota:
description: number of bytes of RAM this query may consume; 0 means unlimited.
type: integer
default: 0
dialect:
$ref: "#/components/schemas/Dialect"
Dialect:
description: dialect are options to change the default CSV output format; https://www.w3.org/TR/2015/REC-tabular-metadata-20151217/#dialect-descriptions
type: object
properties:
header:
description: if true, the results will contain a header row
type: boolean
default: true
delimiter:
description: separator between cells; the default is ,
type: string
default: ","
maxLength: 1
minLength: 1
annotations:
description: https://www.w3.org/TR/2015/REC-tabular-data-model-20151217/#columns
type: array
default: []
items:
type: string
enum:
- group
- datatype
- default
uniqueItems: true
commentPrefix:
description: character prefixed to comment strings
type: string
default: \#
maxLength: 1
minLength: 0
dateTimeFormat:
description: format of timestamps
type: string
default: RFC3339
enum:
- RFC3339
- RFC3339Nano
Permission:
required: [action, resource]
properties:
id:
type: string
nullable: true
description: if id is set that is a permission for a specific resource. if it is not set it is a permission for all resources of that resource type.
name:
type: string
nullable: true
description: optional name of the resource if the resource has a name field.
action:
type: string
enum:
- read
- write
resource:
type: string
enum:
- authorizations
- buckets
- dashboards
- orgs
- sources
- tasks
- telegrafs
- users
Authorization:
required: [orgID, permissions]
properties:
orgID:
type: string
description: ID of org that authorization is scoped to.
status:
description: if inactive the token is inactive and requests using the token will be rejected.
default: active
type: string
enum:
- active
- inactive
description:
type: string
description: A description of the token.
permissions:
type: array
minLength: 1
description: List of permissions for an auth. An auth must have at least one Permission.
items:
$ref: "#/components/schemas/Permission"
id:
readOnly: true
type: string
token:
readOnly: true
type: string
description: Passed via the Authorization Header and Token Authentication type.
userID:
readOnly: true
type: string
description: ID of user that created and owns the token.
user:
readOnly: true
type: string
description: Name of user that created and owns the token.
org:
readOnly: true
type: string
description: Name of the org token is scoped to.
links:
type: object
readOnly: true
example:
self: "/api/v2/authorizations/1"
user: "/api/v2/users/12"
properties:
self:
readOnly: true
type: string
format: uri
user:
readOnly: true
type: string
format: uri
Authorizations:
type: object
properties:
links:
readOnly: true
$ref: "#/components/schemas/Links"
authorizations:
type: array
items:
$ref: "#/components/schemas/Authorization"
Bucket:
properties:
links:
type: object
readOnly: true
example:
self: "/api/v2/buckets/1"
org: "/api/v2/orgs/2"
write: "/api/v2/write?org=myorg"
properties:
self:
readOnly: true
type: string
format: uri
org:
readOnly: true
type: string
format: uri
write:
readOnly: true
type: string
format: uri
id:
readOnly: true
type: string
name:
type: string
organizationID:
type: string
organization:
type: string
rp:
type: string
retentionRules:
type: array
description: rules to expire or retain data. No rules means data never expires.
items:
type: object
properties:
type:
type: string
default: expire
enum:
- expire
everySeconds:
type: integer
description: duration in seconds for how long data will be kept in the database.
example: 86400
minimum: 1
required: [type, everySeconds]
labels:
$ref: "#/components/schemas/Labels"
required: [name, retentionRules]
Buckets:
type: object
properties:
links:
readOnly: true
$ref: "#/components/schemas/Links"
buckets:
type: array
items:
$ref: "#/components/schemas/Bucket"
Link:
type: string
readOnly: true
format: uri
description: URI of resource.
Links:
type: object
properties:
next:
$ref: "#/components/schemas/Link"
self:
$ref: "#/components/schemas/Link"
prev:
$ref: "#/components/schemas/Link"
required: [self]
Logs:
type: object
properties:
events:
readOnly: true
type: array
items:
$ref: "#/components/schemas/LogEvent"
LogEvent:
type: object
properties:
time:
readOnly: true
description: Time event occurred, RFC3339Nano.
type: string
format: date-time
message:
readOnly: true
description: A description of the event that occurred.
type: string
example: Halt and catch fire
Organization:
properties:
links:
type: object
readOnly: true
example:
self: "/api/v2/orgs/1"
members: "/api/v2/orgs/1/members"
labels: "/api/v2/orgs/1/labels"
secrets: "/api/v2/orgs/1/secrets"
buckets: "/api/v2/buckets?org=myorg"
tasks: "/api/v2/tasks?org=myorg"
dashboards: "/api/v2/dashboards?org=myorg"
properties:
self:
readOnly: true
type: string
format: uri
members:
readOnly: true
type: string
format: uri
labels:
readOnly: true
type: string
format: uri
secrets:
readOnly: true
type: string
format: uri
buckets:
readOnly: true
type: string
format: uri
tasks:
readOnly: true
type: string
format: uri
dashboards:
readOnly: true
type: string
format: uri
id:
readOnly: true
type: string
name:
type: string
status:
description: if inactive the organization is inactive.
default: active
type: string
enum:
- active
- inactive
owners:
$ref: "#/components/schemas/Owners"
required: [name]
Organizations:
type: object
properties:
links:
$ref: "#/components/schemas/Links"
orgs:
type: array
items:
$ref: "#/components/schemas/Organization"
Owners:
properties:
users:
$ref: "#/components/schemas/Users"
organizations:
$ref: "#/components/schemas/Organizations"
Run:
properties:
id:
readOnly: true
type: string
taskID:
readOnly: true
type: string
status:
readOnly: true
type: string
enum: [
"scheduled",
"started",
"failed",
"success",
"canceled"
]
scheduledFor:
description: Time used for run's "now" option, RFC3339.
type: string
format: date-time
startedAt:
readOnly: true
description: Time run started executing, RFC3339Nano.
type: string
format: date-time
finishedAt:
readOnly: true
description: Time run finished executing, RFC3339Nano.
type: string
format: date-time
requestedAt:
readOnly: true
description: Time run was manually requested, RFC3339Nano.
type: string
format: date-time
links:
type: object
readOnly: true
example:
self: "/api/v2/tasks/1/runs/1"
task: "/api/v2/tasks/1"
retry: "/api/v2/tasks/1/runs/1/retry"
logs: "/api/v2/tasks/1/runs/1/logs"
properties:
self:
type: string
format: uri
task:
type: string
format: uri
logs:
type: string
format: uri
retry:
type: string
format: uri
RunManually:
properties:
scheduledFor:
nullable: true
description: Time used for run's "now" option, RFC3339. Default is the server's now time.
type: string
format: date-time
Task:
type: object
properties:
id:
readOnly: true
type: string
organizationID:
description: The ID of the organization that owns this Task.
type: string
name:
description: A description of the task.
type: string
status:
description: The current status of the task. When updated to 'inactive', cancels all queued jobs of this task.
default: active
type: string
enum:
- active
- inactive
labels:
$ref: "#/components/schemas/Labels"
flux:
description: The Flux script to run for this task.
type: string
every:
description: A simple task repetition schedule; parsed from Flux.
type: string
cron:
description: A task repetition schedule in the form '* * * * * *'; parsed from Flux.
type: string
offset:
description: Duration to delay after the schedule, before executing the task; parsed from flux.
type: string
latest_completed:
description: Timestamp of latest scheduled, completed run, RFC3339.
type: string
format: date-time
readOnly: true
links:
type: object
readOnly: true
example:
self: "/api/v2/tasks/1"
owners: "/api/v2/tasks/1/owners"
members: "/api/v2/tasks/1/members"
runs: "/api/v2/tasks/1/runs"
logs: "/api/v2/tasks/1/logs"
properties:
self:
type: string
format: uri
owners:
type: string
format: uri
members:
type: string
format: uri
runs:
type: string
format: uri
logs:
type: string
format: uri
required: [name, organization, flux]
Tasks:
type: array
items:
$ref: "#/components/schemas/Task"
User:
properties:
id:
readOnly: true
type: string
name:
type: string
status:
description: if inactive the user is inactive.
default: active
type: string
enum:
- active
- inactive
links:
type: object
readOnly: true
example:
self: "/api/v2/users/1"
log: "/api/v2/users/1/log"
properties:
self:
type: string
format: uri
log:
type: string
format: uri
required: [name]
Users:
type: object
properties:
links:
type: object
properties:
self:
type: string
format: uri
users:
type: array
items:
$ref: "#/components/schemas/User"
ResourceMember:
allOf:
- $ref: "#/components/schemas/User"
- type: object
properties:
role:
type: string
default: member
enum:
- member
ResourceMembers:
type: object
properties:
links:
type: object
properties:
self:
type: string
format: uri
users:
type: array
items:
$ref: "#/components/schemas/ResourceMember"
ResourceOwner:
allOf:
- $ref: "#/components/schemas/User"
- type: object
properties:
role:
type: string
default: owner
enum:
- owner
ResourceOwners:
type: object
properties:
links:
type: object
properties:
self:
type: string
format: uri
users:
type: array
items:
$ref: "#/components/schemas/ResourceOwner"
FluxSuggestions:
type: object
properties:
funcs:
type: object
properties:
name:
type: string
params:
type: object
FluxLinks:
type: object
properties:
ast:
type: string
format: uri
self:
type: string
format: uri
suggestions:
type: string
format: uri
Routes:
properties:
authorizations:
type: string
format: uri
buckets:
type: string
format: uri
dashboards:
type: string
format: uri
external:
type: object
properties:
statusFeed:
type: string
format: uri
macros:
type: string
format: uri
me:
type: string
format: uri
orgs:
type: string
format: uri
protos:
type: string
format: uri
query:
type: object
properties:
self:
type: string
format: uri
ast:
type: string
format: uri
analyze:
type: string
format: uri
spec:
type: string
format: uri
suggestions:
type: string
format: uri
setup:
type: string
format: uri
signin:
type: string
format: uri
signout:
type: string
format: uri
sources:
type: string
format: uri
system:
type: object
properties:
metrics:
type: string
format: uri
debug:
type: string
format: uri
health:
type: string
format: uri
tasks:
type: string
format: uri
telegrafs:
type: string
format: uri
users:
type: string
format: uri
write:
type: string
format: uri
views:
type: string
format: uri
Error:
properties:
code:
description: code is the machine-readable error code.
readOnly: true
type: string
enum:
- internal error
- not found
- conflict
- invalid
- empty value
- unavailable
message:
readOnly: true
description: message is a human-readable message.
type: string
op:
readOnly: true
description: op describes the logical code operation during error. Useful for debugging.
type: string
err:
readOnly: true
description: err is a stack of errors that occurred during processing of the request. Useful for debugging.
type: string
required: [code, message]
LineProtocolError:
properties:
code:
description: code is the machine-readable error code.
readOnly: true
type: string
enum:
- internal error
- not found
- conflict
- invalid
- empty value
- unavailable
message:
readOnly: true
description: message is a human-readable message.
type: string
op:
readOnly: true
description: op describes the logical code operation during error. Useful for debugging.
type: string
err:
readOnly: true
description: err is a stack of errors that occurred during processing of the request. Useful for debugging.
type: string
line:
readOnly: true
description: first line within sent body containing malformed data
type: integer
format: int32
required: [code, message, op, err]
LineProtocolLengthError:
properties:
code:
description: code is the machine-readable error code.
readOnly: true
type: string
enum:
- invalid
message:
readOnly: true
description: message is a human-readable message.
type: string
maxLength:
readOnly: true
description: max length in bytes for a body of line-protocol.
type: integer
format: int32
required: [code, message, maxLength]
InfluxQLResults:
properties:
error:
description: error during processing of the message
type: string
results:
type: array
description: result for each query
items:
type: object
properties:
error:
type: string
description: error during processing of the message
partial:
type: boolean
description: If a max row limit has been placed in the configuration file and the number of returned values is larger, this will be set to true and values truncated.
statement_id:
type: integer
description: statement's position in the query.
series:
description: The collection of data in InfluxDBs data structure that share a measurement, tag set, and retention policy.
type: array
items:
type: object
description: values for a unique series
properties:
name:
description: The part of InfluxDBs structure that describes the data stored in the associated fields. Measurements are strings.
type: string
tags:
description: The key-value pairs in InfluxDBs data structure that records metadata.
type: object
columns:
description: list of columns describing the content of a single value array
type: array
items:
type: string
values:
description: array of arrays of the values return from the query
type: array
items:
type: array
description: single row of results in the order of the columns field.
items:
oneOf:
- type: string
- type: number
- type: integer
partial:
type: boolean
messages:
type: array
description: represents a user-facing message to be included with the result.
items:
type: object
properties:
level:
type: string
text:
type: string
InfluxqlQueryError:
properties:
error:
description: message describing why the query was rejected
readOnly: true
type: string
required:
- error
Field:
type: object
properties:
value:
description: >-
value is the value of the field. Meaning of the value is implied by
the `type` key
type: string
type:
description: >-
type describes the field type. func is a function; field is a field
reference
type: string
enum:
- func
- field
- integer
- number
- regex
- wildcard
alias:
description: >-
Alias overrides the field name in the returned response. Applies only
if type is `func`
type: string
args:
description: Args are the arguments to the function
type: array
items:
$ref: '#/components/schemas/Field'
QueryConfig:
type: object
required:
- database
- measurement
- retentionPolicy
- areTagsAccepted
- tags
- groupBy
- fields
properties:
id:
type: string
database:
type: string
measurement:
type: string
retentionPolicy:
type: string
areTagsAccepted:
type: boolean
rawText:
type: string
tags:
type: object
groupBy:
type: object
properties:
time:
type: string
tags:
type: array
items:
type: string
required:
- time
- tags
fields:
type: array
items:
$ref: '#/components/schemas/Field'
range:
type: object
properties:
lower:
type: string
upper:
type: string
required:
- lower
- upper
DashboardQuery:
type: object
required:
- query
properties:
label:
type: string
description: Optional Y-axis user-facing label
range:
description: Optional default range of the Y-axis
type: object
required:
- upper
- lower
properties:
upper:
description: Upper bound of the display range of the Y-axis
type: integer
format: int64
lower:
description: Lower bound of the display range of the Y-axis
type: integer
format: int64
query:
type: string
source:
type: string
format: uri
description: Optional URI for data source for this query
queryConfig:
$ref: '#/components/schemas/QueryConfig'
Axis:
type: object
description: A description of a particular axis for a visualization
properties:
bounds:
type: array
minItems: 0
maxItems: 2
description: >-
The extents of an axis in the form [lower, upper]. Clients determine
whether bounds are to be inclusive or exclusive of their limits
items:
type: integer
format: int64
label:
description: label is a description of this Axis
type: string
prefix:
description: Prefix represents a label prefix for formatting axis values.
type: string
suffix:
description: Suffix represents a label suffix for formatting axis values.
type: string
base:
description: Base represents the radix for formatting axis values.
type: string
scale:
description: 'Scale is the axis formatting scale. Supported: "log", "linear"'
type: string
DashboardColor:
type: object
description: Color defines an encoding of data value into color space
properties:
id:
description: ID is the unique id of the view color
type: string
type:
description: Type is how the color is used.
type: string
enum:
- min
- max
- threshold
hex:
description: Hex is the hex number of the color
type: string
maxLength: 7
minLength: 7
name:
description: Name is the user-facing name of the hex color
type: string
value:
description: Value is the data value mapped to this color
type: string
RenamableField:
description: Describes a field that can be renamed and made visible or invisible
type: object
properties:
internalName:
description: This is the calculated name of a field
readOnly: true
type: string
displayName:
description: This is the name that a field is renamed to by the user
type: string
visible:
description: Indicates whether this field should be visible on the table
type: boolean
LogViewProperties:
description: Contains the configuration for the log viewer
type: object
required:
- columns
- shape
- type
properties:
shape:
type: string
enum: ["chronograf-v2"]
type:
type: string
enum: ["log-viewer"]
columns:
description: Defines the order, names, and visibility of columns in the log
viewer table
type: array
items:
"$ref": "#/components/schemas/LogViewerColumn"
example:
columns:
- name: severity
position: 0
settings:
- type: label
value: icon
- type: label
value: text
- type: visibility
value: visible
- type: color
name: ruby
value: emergency
- type: color
name: rainforest
value: info
- type: displayName
value: Log Severity!
- name: messages
position: 1
settings:
- type: visibility
value: hidden
LogViewerColumn:
description: Contains a specific column's settings.
type: object
required:
- name
- position
- settings
properties:
name:
description: Unique identifier name of the column
type: string
position:
type: integer
format: int32
settings:
description: Composable settings options for the column
type: array
items:
description: Type and value and optional name of a setting.
type: object
required:
- type
- value
properties:
type:
type: string
value:
type: string
name:
type: string
example:
name: severity
position: 0
settings:
- type: label
value: icon
- type: label
value: text
- type: visibility
value: visible
- type: color
name: ruby
value: emergency
- type: color
name: rainforest
value: info
- type: displayName
value: Log Severity!
V1ViewProperties:
properties:
type:
type: string
enum: ["chronograf-v1"]
queries:
type: array
items:
$ref: "#/components/schemas/DashboardQuery"
axes:
description: The viewport for a View's visualizations
type: object
properties:
x:
$ref: '#/components/schemas/Axis'
y:
$ref: '#/components/schemas/Axis'
y2:
$ref: '#/components/schemas/Axis'
graphType:
description: The viewport for a view's graph/visualization
type: string
enum:
- single-stat
- line
- line-plus-single-stat
- line-stacked
- line-stepplot
- bar
- gauge
- table
default: line
colors:
description: Colors define color encoding of data into a visualization
type: array
items:
$ref: "#/components/schemas/DashboardColor"
legend:
description: Legend define encoding of data into a view's legend
type: object
properties:
type:
description: type is the style of the legend
type: string
enum:
- static
orientation:
description: >-
orientation is the location of the legend with respect to the view
graph
type: string
enum:
- top
- bottom
- left
- right
tableOptions:
properties:
verticalTimeAxis:
description: >-
verticalTimeAxis describes the orientation of the table by
indicating whether the time axis will be displayed vertically
type: boolean
sortBy:
$ref: "#/components/schemas/RenamableField"
wrapping:
description: wrapping describes the text wrapping style to be used in table views
type: string
enum:
- truncate
- wrap
- single-line
fixFirstColumn:
description: >-
fixFirstColumn indicates whether the first column of the table
should be locked
type: boolean
fieldOptions:
description: >-
fieldOptions represent the fields retrieved by the query with
customization options
type: array
items:
$ref: '#/components/schemas/RenamableField'
timeFormat:
description: >-
timeFormat describes the display format for time values according to
moment.js date formatting
type: string
decimalPoints:
description: >-
decimal points indicates whether and how many digits to show after
decimal point
type: object
properties:
isEnforced:
description: Indicates whether decimal point setting should be enforced
type: boolean
digits:
description: The number of digists after decimal to display
type: integer
EmptyViewProperties:
properties:
type:
type: string
enum: ["empty"]
ConstantMacroProperties:
properties:
type:
type: string
enum: ["constant"]
values:
type: array
items:
type: string
MapMacroProperties:
properties:
type:
type: string
enum: ["map"]
values:
type: object
QueryMacroProperties:
properties:
type:
type: string
enum: ["query"]
query:
type: string
queryType:
type: string
Macro:
type: object
properties:
links:
type: object
readOnly: true
properties:
self:
type: string
format: uri
id:
readOnly: true
type: string
name:
type: string
selected:
type: array
items:
type: string
arguments:
type: object
oneOf:
- $ref: "#/components/schemas/QueryMacroProperties"
- $ref: "#/components/schemas/ConstantMacroProperties"
- $ref: "#/components/schemas/MapMacroProperties"
Macros:
type: object
example:
macros:
- id: '1221432'
name: ":ok:"
selected:
- hello
arguments:
type: constant
values:
- howdy
- hello
- hi
- yo
- oy
- id: '1221432'
name: ":ok:"
selected:
- c
arguments:
type: map
values:
a: fdjaklfdjkldsfjlkjdsa
b: dfaksjfkljekfajekdljfas
c: fdjksajfdkfeawfeea
- id: '1221432'
name: ":ok:"
selected:
- host
arguments:
type: query
query: 'from(bucket: "foo") |> showMeasurements()'
language: flux
properties:
macros:
$ref: "#/components/schemas/Macro"
View:
properties:
links:
type: object
readOnly: true
properties:
self:
type: string
id:
readOnly: true
type: string
name:
type: string
properties:
oneOf:
- $ref: "#/components/schemas/V1ViewProperties"
- $ref: "#/components/schemas/EmptyViewProperties"
- $ref: "#/components/schemas/LogViewProperties"
Views:
type: object
properties:
links:
type: object
properties:
self:
type: string
views:
type: array
items:
$ref: "#/components/schemas/View"
CellUpdate:
type: object
properties:
name:
type: string
CreateCell:
type: object
properties:
name:
type: string
x:
type: integer
format: int32
y:
type: integer
format: int32
w:
type: integer
format: int32
h:
type: integer
format: int32
viewID:
type: string
description: uses the view provided in the request
usingView:
type: string
description: makes a copy of the provided view
AnalyzeQueryResponse:
type: object
properties:
errors:
type: array
items:
type: object
properties:
line:
type: integer
column:
type: integer
character:
type: integer
message:
type: string
Cell:
type: object
properties:
links:
type: object
properties:
self:
type: string
view:
type: string
name:
type: string
x:
type: integer
format: int32
y:
type: integer
format: int32
w:
type: integer
format: int32
h:
type: integer
format: int32
viewID:
type: string
description: The reference to a view from the views API
Cells:
type: array
items:
$ref: "#/components/schemas/Cell"
Secrets:
additionalProperties:
type: string
example:
apikey: abc123xyz
SecretKeys:
properties:
links:
type: object
properties:
self:
type: string
org:
type: string
secrets:
type: array
items:
type: string
CreateProtoResourcesRequest:
properties:
organizationID:
type: string
Proto:
properties:
links:
readOnly: true
type: object
properties:
dashboard:
type: string
format: uri
id:
readOnly: true
type: string
name:
readOnly: true
type: string
description: user-facing name of the proto
dashboards:
type: array
items:
$ref: "#/components/schemas/Dashboard"
views:
type: object
additionalProperties:
$ref: "#/components/schemas/View"
Protos:
properties:
protos:
type: array
items:
$ref: "#/components/schemas/Proto"
Dashboard:
properties:
links:
type: object
properties:
self:
type: string
cells:
type: string
id:
readOnly: true
type: string
name:
type: string
description: user-facing name of the dashboard
description:
type: string
description: user-facing description of the dashboard
meta:
type: object
properties:
createdAt:
type: string
format: date
updatedAt:
type: string
format: date
cells:
$ref: "#/components/schemas/Cells"
labels:
$ref: "#/components/schemas/Labels"
Dashboards:
type: object
properties:
links:
$ref: "#/components/schemas/Links"
dashboards:
type: array
items:
$ref: "#/components/schemas/Dashboard"
Source:
type: object
properties:
links:
type: object
properties:
self:
type: string
id:
type: string
organizationID:
type: string
default:
type: boolean
name:
type: string
type:
type: string
enum: ["v1","v2","self"]
url:
type: string
format: uri
insecureSkipVerify:
type: boolean
telegraf:
type: string
token:
type: string
username:
type: string
password:
type: string
sharedSecret:
type: string
metaUrl:
type: string
format: uri
defaultRP:
type: string
languages:
type: array
readOnly: true
items:
type: string
enum:
- flux
- influxql
- spec
Sources:
type: object
properties:
links:
type: object
properties:
self:
type: string
format: uri
sources:
type: array
items:
$ref: "#/components/schemas/Source"
ScraperTargetRequest:
type: object
properties:
name:
type: string
description: name of the scraper target
type:
type: string
description: type of the metrics to be parsed
enum: [prometheus]
url:
type: string
description: url of the metrics endpoint
example: http://localhost:9090/metrics
orgID:
type: string
description: id of the organization
bucketID:
type: string
description: id of the bucket to be written
ScraperTargetResponse:
type: object
allOf:
- $ref: "#/components/schemas/ScraperTargetRequest"
- type: object
properties:
id:
type: string
readOnly: true
organization:
type: string
description: name of the organization
bucket:
type: string
description: name of the bucket
links:
readOnly: true
$ref: "#/components/schemas/Links"
ScraperTargetResponses:
type: object
properties:
configurations:
type: array
items:
$ref: "#/components/schemas/ScraperTargetResponse"
TelegrafRequest:
type: object
properties:
name:
type: string
agent:
type: object
properties:
collectionInterval:
type: integer
plugins:
type: array
items:
$ref: "#/components/schemas/TelegrafRequestPlugin"
TelegrafRequestPlugin:
type: object
discriminator:
propertyName: "name"
required:
- name
properties:
name:
type: string
TelegrafPluginInputCpu:
type: object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["cpu"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: "#/components/schemas/TelegrafPluginConfig"
TelegrafPluginInputCpuRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputCpu"
TelegrafPluginInputDisk:
type: object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["disk"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: "#/components/schemas/TelegrafPluginConfig"
TelegrafPluginInputDiskRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputDisk"
TelegrafPluginInputDiskio:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["diskio"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: "#/components/schemas/TelegrafPluginConfig"
TelegrafPluginInputDiskioRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputDiskio"
TelegrafPluginInputDocker:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["docker"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginInputDockerConfig'
TelegrafPluginInputDockerRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputDocker"
TelegrafPluginInputFile:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["file"]
type:
type: string
enum: [input]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginInputFileConfig'
TelegrafPluginInputFileRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputFile"
TelegrafPluginInputKernel:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["kernel"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: "#/components/schemas/TelegrafPluginConfig"
TelegrafPluginInputKernelRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputKernel"
TelegrafPluginInputKubernetes:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["kubernetes"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginInputKubernetesConfig'
TelegrafPluginInputKubernetesRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputKubernetes"
TelegrafPluginInputLogParser:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["logparser"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginInputLogParserConfig'
TelegrafPluginInputLogParserRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputLogParser"
TelegrafPluginInputMem:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["mem"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: "#/components/schemas/TelegrafPluginConfig"
TelegrafPluginInputMemRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputMem"
TelegrafPluginInputNetResponse:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["net_response"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: "#/components/schemas/TelegrafPluginConfig"
TelegrafPluginInputNetResponseRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputNetResponse"
TelegrafPluginInputNet:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["net"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: "#/components/schemas/TelegrafPluginConfig"
TelegrafPluginInputNetRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputNet"
TelegrafPluginInputNgnix:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["ngnix"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: "#/components/schemas/TelegrafPluginConfig"
TelegrafPluginInputNgnixRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputNgnix"
TelegrafPluginInputProcesses:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["processes"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: "#/components/schemas/TelegrafPluginConfig"
TelegrafPluginInputProcessesRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputProcesses"
TelegrafPluginInputProcstat:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["procstat"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginInputProcstatConfig'
TelegrafPluginInputProcstatRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputProcstat"
TelegrafPluginInputPrometheus:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["prometheus"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginInputPrometheusConfig'
TelegrafPluginInputPrometheusRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputPrometheus"
TelegrafPluginInputRedis:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["redis"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginInputRedisConfig'
TelegrafPluginInputRedisRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputRedis"
TelegrafPluginInputSyslog:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["syslog"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginInputSyslogConfig'
TelegrafPluginInputSyslogRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputSyslog"
TelegrafPluginInputSwap:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["swap"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginConfig'
TelegrafPluginInputSwapRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputSwap"
TelegrafPluginInputSystem:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["system"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginConfig'
TelegrafPluginInputSystemRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputSystem"
TelegrafPluginInputTail:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["tail"]
type:
type: string
enum: ["input"]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginConfig'
TelegrafPluginInputTailRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginInputTail"
TelegrafPluginOutputFile:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["file"]
type:
type: string
enum: ["output"]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginOutputFileConfig'
TelegrafPluginOutputFileRequest:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginOutputFile"
TelegrafPluginOutputInfluxDBV2:
type:
object
required:
- name
- type
- config
properties:
name:
type: string
enum: ["influxdb_v2"]
type:
type: string
enum: ["output"]
comment:
type: string
config:
$ref: '#/components/schemas/TelegrafPluginOutputInfluxDBV2Config'
TelegrafPluginOutputInfluxDBV2Request:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequestPlugin"
- $ref: "#/components/schemas/TelegrafPluginOutputInfluxDBV2"
TelegrafRequestConfig:
oneOf:
- $ref: '#/components/schemas/TelegrafPluginConfig'
- $ref: '#/components/schemas/TelegrafPluginInputDockerConfig'
- $ref: '#/components/schemas/TelegrafPluginInputFileConfig'
- $ref: '#/components/schemas/TelegrafPluginInputKubernetesConfig'
- $ref: '#/components/schemas/TelegrafPluginInputLogParserConfig'
- $ref: '#/components/schemas/TelegrafPluginInputProcstatConfig'
- $ref: '#/components/schemas/TelegrafPluginInputPrometheusConfig'
- $ref: '#/components/schemas/TelegrafPluginInputRedisConfig'
- $ref: '#/components/schemas/TelegrafPluginInputSyslogConfig'
- $ref: '#/components/schemas/TelegrafPluginOutputFileConfig'
- $ref: '#/components/schemas/TelegrafPluginOutputInfluxDBV2Config'
Telegraf:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequest"
- type: object
properties:
id:
type: string
links:
type: object
properties:
self:
type: string
labels:
type: string
labels:
$ref: "#/components/schemas/Labels"
Telegrafs:
type: object
properties:
configurations:
type: array
items:
$ref: "#/components/schemas/Telegraf"
TelegrafPluginConfig:
type: object
TelegrafPluginInputDockerConfig:
type: object
required:
- endpoint
properties:
endpoint:
type: string
TelegrafPluginInputFileConfig:
type: object
properties:
files:
type: array
items:
type: string
TelegrafPluginInputKubernetesConfig:
type: object
properties:
url:
type: string
format: uri
TelegrafPluginInputLogParserConfig:
type: object
properties:
files:
type: array
items:
type: string
TelegrafPluginInputProcstatConfig:
type: object
properties:
exe:
type: string
TelegrafPluginInputPrometheusConfig:
type: object
properties:
urls:
type: array
items:
type: string
format: uri
TelegrafPluginInputRedisConfig:
type: object
properties:
servers:
type: array
items:
type: string
password:
type: string
TelegrafPluginInputSyslogConfig:
type: object
properties:
server:
type: string
TelegrafPluginOutputFileConfig:
type: object
required:
- files
properties:
files:
type: array
items:
type: object
properties:
type:
type: string
enum: [stdout, path]
path:
type: string
TelegrafPluginOutputInfluxDBV2Config:
type: object
required:
- urls
- token
- organization
- bucket
properties:
urls:
type: array
items:
type: string
format: uri
token:
type: string
organization:
type: string
bucket:
type: string
IsOnboarding:
type: object
properties:
allowed:
type: boolean
OnboardingRequest:
type: object
properties:
username:
type: string
password:
type: string
org:
type: string
bucket:
type: string
retentionPeriodHrs:
type: integer
required:
- username
- password
- org
- bucket
OnboardingResponse:
type: object
properties:
user:
$ref: "#/components/schemas/User"
org:
$ref: "#/components/schemas/Organization"
bucket:
$ref: "#/components/schemas/Bucket"
auth:
$ref: "#/components/schemas/Authorization"
PasswordResetBody:
properties:
password:
type: string
required:
- password
AddResourceMemberRequestBody:
type: object
properties:
id:
type: string
name:
type: string
required:
- id
Check:
type: object
required:
- name
- status
properties:
name:
type: string
message:
type: string
checks:
type: array
items:
$ref: "#/components/schemas/Check"
status:
type: string
enum:
- pass
- fail
Labels:
type: array
items:
$ref: "#/components/schemas/Label"
Label:
type: object
properties:
name:
type: string
properties:
type: object
description: Key/Value pairs associated with this label. Keys can be removed by sending an update with an empty value.
example: {"color": "ffb3b3", "description": "this is a description"}