influxdb/http/cur_swagger.yml

4868 lines
133 KiB
YAML

openapi: "3.0.0"
info:
title: Influx API Service
version: 0.1.0
servers:
- url: "http://localhost:9999/api/v2"
paths:
/signin:
post:
summary: Exchange basic auth credentials for session
security:
- basicAuth: []
responses:
'204':
description: succesfully authenticated
default:
description: unsuccessful authentication
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/signout:
post:
summary: Expire the current session
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
responses:
default:
description: All routes
content:
application/json:
schema:
$ref: "#/components/schemas/Routes"
/setup:
get:
tags:
- Setup
summary: check if database has default user, org, bucket created, returns true if not.
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
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:
- in: query
name: org
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:
- in: query
name: org
description: specifies the organization of the resource
required: true
schema:
type: string
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:
- 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:
- 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}/members':
get:
tags:
- Users
- Telegrafs
summary: List all users with member privileges for a telegraf config
parameters:
- 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/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Telegrafs
summary: Add telegraf config member
parameters:
- 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/User"
responses:
'201':
description: member added to telegraf
content:
application/json:
schema:
$ref: "#/components/schemas/User"
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:
- 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:
- 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/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Telegrafs
summary: Add telegraf config owner
parameters:
- 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/User"
responses:
'201':
description: telegraf config owner added
content:
application/json:
schema:
$ref: "#/components/schemas/User"
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:
- 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"
/macros:
get:
tags:
- Macros
summary: keywords that specify how input data gets mapped to a replacement output sequence
parameters:
- in: header
name: Authorization
description: the authorization header should be in the format of `Token <key>`
required: true
schema:
type: string
- 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"
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
summary: keywords that specify how input data gets mapped to a replacement output sequence
tags:
- Macros
parameters:
- in: header
name: Authorization
description: the authorization header should be in the format of `Token <key>`
required: true
schema:
type: string
- in: query
name: org
required: true
schema:
type: string
description: filter macros to a specific organization name
responses:
'201':
description: macro created
content:
application/json:
schema:
$ref: "#/components/schemas/Macros"
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/macros/{macroID}':
delete:
tags:
- Macros
summary: keywords that specify how input data gets mapped to a replacement output sequence
parameters:
- in: header
name: Authorization
description: the authorization header should be in the format of `Token <key>`
required: true
schema:
type: string
- in: path
name: macroID
required: true
schema:
type: string
description: id of the macro
- in: query
name: org
required: true
schema:
type: string
description: filter macros to a specific organization name
responses:
'204':
description: macro deleted
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
summary: keywords that specify how input data gets mapped to a replacement output sequence
tags:
- Macros
parameters:
- in: header
name: Authorization
description: the authorization header should be in the format of `Token <key>`
required: true
schema:
type: string
- in: path
name: macroID
required: true
schema:
type: string
description: id of the macro
- in: query
name: org
required: true
schema:
type: string
description: filter macros to a specific organization name
responses:
'200':
description: macro updated
content:
application/json:
schema:
$ref: "#/components/schemas/Macros"
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:
- 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
- u
- 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"
/health:
get:
tags:
- Health
summary: Get the health of an instance
responses:
'200':
description: the instance is healthy
content:
application/json:
schema:
$ref: "#/components/schemas/Health"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/sources:
post:
tags:
- Sources
summary: Creates a Source
parameters:
- in: query
name: org
description: specifies the organization of the resource
required: true
schema:
type: string
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:
- 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:
- 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:
- 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:
- 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}/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:
- 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:
- in: query
name: org
description: specifies the organization of the resource
required: true
schema:
type: string
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:
- in: query
name: org
description: specifies the organization of the resource
required: true
schema:
type: string
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:
- 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:
- 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:
- 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"
/dashboards:
post:
tags:
- Dashboards
summary: Create a dashboard
parameters:
- in: query
name: org
description: specifies the organization of the resource
required: true
schema:
type: string
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:
- 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:
- 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:
- 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:
- 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:
- 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:
- 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:
- 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:
- 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}/members':
get:
tags:
- Users
- Dashboards
summary: List all dashboard members
parameters:
- 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/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Dashboards
summary: Add dashboard member
parameters:
- 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/User"
responses:
'201':
description: added to dashboard members
content:
application/json:
schema:
$ref: "#/components/schemas/User"
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:
- 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:
- 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/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Dashboards
summary: Add dashboard owner
parameters:
- 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/User"
responses:
'201':
description: added to dashboard owners
content:
application/json:
schema:
$ref: "#/components/schemas/User"
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:
- 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:
- in: header
name: Content-Type
schema:
type: string
enum:
- application/json
- in: header
name: Authorization
description: the authorization header should be in the format of `Token <key>`
schema:
type: string
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.
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:
- in: header
name: Content-Type
schema:
type: string
enum:
- application/json
- in: header
name: Authorization
description: the authorization header should be in the format of `Token <key>`
schema:
type: string
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/plan:
post:
description: analyzes flux query or specification and generates a query plan.
tags:
- Query
parameters:
- in: header
name: Content-Type
schema:
type: string
enum:
- application/json
- in: header
name: Authorization
description: the authorization header should be in the format of `Token <key>`
schema:
type: string
requestBody:
description: flux query or specification to generate plan.
content:
application/json:
schema:
$ref: "#/components/schemas/PlanRequest"
responses:
'200':
description: Logical plan of flux query.
content:
application/json:
schema:
$ref: "#/components/schemas/PlanResponse"
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
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:
- 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:
- 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
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"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/authorizations/{authID}:
get:
tags:
- Authorizations
summary: Retrieve an authorization
parameters:
- 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:
- 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:
- 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:
get:
tags:
- Query
summary: query influx with specified return formatting. The spec and query fields are mutually exclusive.
parameters:
- 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
- in: header
name: Authorization
description: the authorization header should be in the format of `Token <key>`
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:
- 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: header
name: Authorization
description: the authorization header should be in the format of `Token <key>`
schema:
type: string
- in: query
name: org
description: specifies the name 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:
- in: query
name: org
description: specifies the organization of the resource
required: true
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:
- in: query
name: org
description: specifies the organization of the resource
required: true
schema:
type: string
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:
- 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:
- 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"
'/buckets/{bucketID}/members':
get:
tags:
- Users
- Buckets
summary: List all users with member privileges for a bucket
parameters:
- 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/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Buckets
summary: Add bucket member
parameters:
- 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/User"
responses:
'201':
description: member added to bucket
content:
application/json:
schema:
$ref: "#/components/schemas/User"
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:
- 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:
- 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/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Buckets
summary: Add bucket owner
parameters:
- 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/User"
responses:
'201':
description: bucket owner added
content:
application/json:
schema:
$ref: "#/components/schemas/User"
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:
- 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
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:
- 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:
- 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"
'/orgs/{orgID}/members':
get:
tags:
- Users
- Organizations
summary: List all members of an organization
parameters:
- 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/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Organizations
summary: Add organization member
parameters:
- 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/User"
responses:
'201':
description: added to organization created
content:
application/json:
schema:
$ref: "#/components/schemas/User"
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:
- 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:
- 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/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Organizations
summary: Add organization owner
parameters:
- 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/User"
responses:
'201':
description: organization owner added
content:
application/json:
schema:
$ref: "#/components/schemas/User"
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:
- 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.
description: Lists tasks, limit 100
parameters:
- 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 name
- in: query
name: org
schema:
type: string
description: filter tasks to a specific organization name
responses:
'200':
description: A list of tasks
content:
application/json:
schema:
type: object
properties:
tasks:
type: array
items:
$ref: "#/components/schemas/Task"
links:
$ref: "#/components/schemas/Links"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Tasks
summary: Create a new task
requestBody:
description: task to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/TaskCreateRequest"
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:
- 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/TaskUpdateRequest"
parameters:
- 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:
- 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:
- 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"
'/tasks/{taskID}/runs/{runID}':
get:
tags:
- Tasks
summary: Retrieve a single run record for a task
parameters:
- 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:
- 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:
'204':
description: retry has been queued
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:
- 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:
- 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"
/me:
get:
tags:
- Users
summary: Returns currently authenticated user
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: []
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:
- 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/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Tasks
summary: Add task member
parameters:
- 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/User"
responses:
'201':
description: added to task members
content:
application/json:
schema:
$ref: "#/components/schemas/User"
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:
- 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:
- 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/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Tasks
summary: Add task owner
parameters:
- 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/User"
responses:
'201':
description: added to task owners
content:
application/json:
schema:
$ref: "#/components/schemas/User"
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:
- 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
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/UserResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/users/{userID}':
get:
tags:
- Users
summary: Retrieve a user
parameters:
- 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/UserResponse"
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:
- 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:
- 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:
- 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/UserResponse"
default:
description: unsuccessful authentication
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/views/{viewID}/members':
get:
tags:
- Users
- Views
summary: List all view members
parameters:
- 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/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Views
summary: Add view member
parameters:
- 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/User"
responses:
'201':
description: added to view members
content:
application/json:
schema:
$ref: "#/components/schemas/User"
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:
- 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:
- 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/Users"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
tags:
- Users
- Views
summary: Add view owner
parameters:
- 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/User"
responses:
'201':
description: added to view owners
content:
application/json:
schema:
$ref: "#/components/schemas/User"
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:
- 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"
components:
schemas:
LanguageRequest:
description: flux query to be analyzed.
type: object
required:
- query
properties:
query:
description: flux query script to be analyzed
type: string
PlanRequest:
description: flux query or specification to be planned. The spec and query fields are mutually exclusive.
type: object
properties:
query:
description: flux query script to be analyzed
type: string
spec:
$ref: "#/components/schemas/QuerySpecification"
PlanResponse:
description: flux query or specification to be planned.
type: object
required:
- query
properties:
spec:
$ref: "#/components/schemas/QuerySpecification"
readOnly: true
logical:
description: logical plan of the query.
readOnly: true
type: object #TODO(goller): document the logical plan format
physical:
description: physical plan of the query.
readOnly: true
type: object #TODO(goller): document the physical plan format
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
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:
properties:
action:
type: string
enum:
- read
- write
- create
- delete
resource:
type: string
enum:
- user
- org
- task/:id
- bucket/:id
- dashboard/:id
- org/:id
- org/:id/task
- org/:id/bucket
- org/:id/source
- org/:id/dashboard
Authorization:
properties:
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
id:
readOnly: true
type: string
status:
description: if inactive the token is inactive and requests using the token will be rejected.
default: active
type: string
enum:
- active
- inactive
token:
readOnly: true
type: string
permissions:
type: array
items:
$ref: "#/components/schemas/Permission"
owner:
$ref: "#/components/schemas/Owners"
required: [owner]
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
owners:
$ref: "#/components/schemas/Owners"
name:
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]
required: [name, retentionRules]
Buckets:
type: object
properties:
links:
readOnly: true
$ref: "#/components/schemas/Links"
buckets:
type: array
items:
$ref: "#/components/schemas/Bucket"
Link:
type: object
readOnly: true
description: URI of resource.
properties:
href:
type: string
format: uri
required: [href]
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"
users: "/api/v2/orgs/1/users"
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
users:
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",
"executing",
"failed",
"success"
]
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
error:
$ref: "#/components/schemas/Error"
log:
readOnly: true
description: Link to the full logs for a run.
type: string
TaskCreateRequest:
properties:
organizationId:
description: The ID of the organization that owns this Task.
type: string
status:
description: Starting state of the task. 'inactive' tasks are not run until they are updated to 'active'
default: active
type: string
enum:
- active
- inactive
flux:
description: The Flux script to run for this task.
type: string
required: [organizationId, flux]
TaskUpdateRequest:
properties:
status:
description: Starting state of the task. 'inactive' tasks are not run until they are updated to 'active'
default: active
type: string
enum:
- active
- inactive
flux:
description: The Flux script to run for this task.
type: string
Task:
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
owners:
$ref: "#/components/schemas/Owners"
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
delay:
description: How long to wait before running the task
type: string
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]
UserResponse:
type: object
properties:
user:
$ref: "#/components/schemas/User"
links:
type: object
properties:
self:
type: string
format: uri
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
required: [name]
Users:
type: object
properties:
links:
type: object
properties:
self:
type: string
format: uri
users:
type: array
items:
$ref: "#/components/schemas/UserResponse"
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:
sources:
type: string
format: uri
dashboards:
type: string
format: uri
query:
type: string
format: uri
write:
type: string
format: uri
orgs:
type: string
format: uri
auths:
type: string
format: uri
buckets:
type: string
format: uri
users:
type: string
format: uri
tasks:
type: string
format: uri
system:
type: object
properties:
metrics:
type: string
format: uri
debug:
type: string
format: uri
health:
type: string
format: uri
external:
type: object
properties:
statusFeed:
type: string
format: uri
flux:
$ref: "#/components/schemas/FluxLinks"
Error:
properties:
code:
description: code is the machine-readable error code.
readOnly: true
type: string
enum:
- internal error
- not found
- conflict
- invalid
- empty value
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, op, err]
LineProtocolError:
properties:
code:
description: code is the machine-readable error code.
readOnly: true
type: string
enum:
- internal error
- not found
- conflict
- invalid
- empty value
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]
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
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
Cell:
type: object
properties:
id:
type: string
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"
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"
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"
TelegrafRequest:
type: object
properties:
name:
type: string
agent:
type: object
properties:
interval:
type: integer
plugins:
type: array
items:
type: object
properties:
name:
type: string
enum: [cpu, disk, diskio, docker, file, kernel, kubernetes, logparser, mem, net_response, net, ngnix, processes, procstats, prometheus, redis, swap, syslog, system, tail, influxdb_v2]
type:
type: string
enum: [input, output, processor, aggregator]
comment:
type: string
config:
oneOf:
- $ref: '#/components/schemas/TelegrafPluginInput'
- $ref: '#/components/schemas/TelegrafPluginInputDocker'
- $ref: '#/components/schemas/TelegrafPluginInputFile'
- $ref: '#/components/schemas/TelegrafPluginInputKubernetes'
- $ref: '#/components/schemas/TelegrafPluginInputLogParser'
- $ref: '#/components/schemas/TelegrafPluginInputProcstat'
- $ref: '#/components/schemas/TelegrafPluginInputPrometheus'
- $ref: '#/components/schemas/TelegrafPluginInputRedis'
- $ref: '#/components/schemas/TelegrafPluginInputSyslog'
- $ref: '#/components/schemas/TelegrafPluginOutputFile'
- $ref: '#/components/schemas/TelegrafPluginOutputInfluxDBV2'
Telegraf:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequest"
- type: object
properties:
id:
type: string
links:
type: object
properties:
self:
type: string
owners:
$ref: "#/components/schemas/Owners"
Telegrafs:
type: object
properties:
configurations:
type: array
items:
$ref: "#/components/schemas/Telegraf"
TelegrafPluginInput:
type: object
TelegrafPluginInputDocker:
type: object
properties:
endpoint:
type: string
TelegrafPluginInputFile:
type: object
properties:
files:
type: array
items:
type: string
TelegrafPluginInputKubernetes:
type: object
properties:
url:
type: string
format: uri
TelegrafPluginInputLogParser:
type: object
properties:
files:
type: array
items:
type: string
TelegrafPluginInputProcstat:
type: object
properties:
exe:
type: string
TelegrafPluginInputPrometheus:
type: object
properties:
urls:
type: array
items:
type: string
format: uri
TelegrafPluginInputRedis:
type: object
properties:
servers:
type: array
items:
type: string
password:
type: string
TelegrafPluginInputSyslog:
type: object
properties:
server:
type: string
TelegrafPluginOutputFile:
type: object
required:
- files
properties:
files:
type: array
items:
type: object
properties:
type:
type: string
enum: [stdout, path]
path:
type: string
TelegrafPluginOutputInfluxDBV2:
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
Health:
type: object
properties:
name:
type: string
message:
type: string
checks:
type: array
items:
$ref: "#/components/schemas/Health"
status:
type: string
enum:
- unhealthy
- healthy