influxdb/http/swagger.yml

8898 lines
249 KiB
YAML

openapi: "3.0.0"
info:
title: Influx API Service
version: 0.1.0
servers:
- url: /api/v2
paths:
/signin:
post:
operationId: PostSignin
summary: Exchange basic auth credentials for session
security:
- BasicAuth: []
parameters:
- $ref: '#/components/parameters/TraceSpan'
responses:
'204':
description: successfully authenticated
'401':
description: unauthorized access
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unsuccessful authentication
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/signout:
post:
operationId: PostSignout
summary: Expire the current session
parameters:
- $ref: '#/components/parameters/TraceSpan'
responses:
'204':
description: session successfully expired
'401':
description: unauthorized access
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unsuccessful session exipry
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/:
get:
operationId: GetRoutes
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"
/setup:
get:
operationId: GetSetup
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:
operationId: PostSetup
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"
/documents/templates:
get:
operationId: GetDocumentsTemplates
tags:
- Templates
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: org
description: specifies the name of the organization of the template
schema:
type: string
- in: query
name: orgID
description: specifies the organization id of the template
schema:
type: string
responses:
'200':
description: a list of template documents
content:
application/json:
schema:
$ref: "#/components/schemas/Documents"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostDocumentsTemplates
tags:
- Templates
summary: Create a template
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: template that will be created
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/DocumentCreate"
responses:
'201':
description: Template created
content:
application/json:
schema:
$ref: "#/components/schemas/Document"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/documents/templates/{templateID}':
get:
operationId: GetDocumentsTemplatesID
tags:
- Templates
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: templateID
schema:
type: string
required: true
description: ID of template
responses:
'200':
description: the template requested
content:
application/json:
schema:
$ref: "#/components/schemas/Document"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
put:
operationId: PutDocumentsTemplatesID
tags:
- Templates
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: templateID
schema:
type: string
required: true
description: ID of template
requestBody:
description: template that will be updated
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/DocumentUpdate"
responses:
'200':
description: the newly updated template
content:
application/json:
schema:
$ref: "#/components/schemas/Document"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
operationId: DeleteDocumentsTemplatesID
tags:
- Templates
summary: delete a template document
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: templateID
schema:
type: string
required: true
description: ID of template
responses:
'204':
description: delete has been accepted
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/documents/templates/{templateID}/labels':
get:
operationId: GetDocumentsTemplatesIDLabels
tags:
- Templates
summary: list all labels for a template
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: templateID
schema:
type: string
required: true
description: ID of template
responses:
'200':
description: a list of all labels for a template
content:
application/json:
schema:
$ref: "#/components/schemas/LabelsResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostDocumentsTemplatesIDLabels
tags:
- Templates
summary: add a label to a template
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: templateID
schema:
type: string
required: true
description: ID of template
requestBody:
description: label to add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/LabelMapping"
responses:
'201':
description: "the label added to the template"
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/documents/templates/{templateID}/labels/{labelID}':
delete:
operationId: DeleteDocumentsTemplatesIDLabelsID
tags:
- Templates
summary: delete a label from a template
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: templateID
schema:
type: string
required: true
description: ID of template
- in: path
name: labelID
schema:
type: string
required: true
description: the label ID
responses:
'204':
description: delete has been accepted
'404':
description: template not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/telegrafs:
get:
operationId: GetTelegrafs
tags:
- Telegrafs
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: orgID
description: specifies the organization of the resource
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:
operationId: PostTelegrafs
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:
operationId: GetTelegrafsID
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
- in: header
name: Accept
required: false
schema:
type: string
default: application/toml
enum:
- application/toml
- application/json
- application/octet-stream
responses:
'200':
description: telegraf config details
content:
application/toml:
example: "[agent]\ninterval = \"10s\""
schema:
type: string
application/json:
schema:
$ref: "#/components/schemas/Telegraf"
application/octet-stream:
example: "[agent]\ninterval = \"10s\""
schema:
type: string
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
put:
operationId: PutTelegrafsID
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"
delete:
operationId: DeleteTelegrafsID
tags:
- Telegrafs
summary: delete a telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: ID of telegraf config
responses:
'204':
description: delete has been accepted
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/telegrafs/{telegrafID}/labels':
get:
operationId: GetTelegrafsIDLabels
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:
$ref: "#/components/schemas/LabelsResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostTelegrafsIDLabels
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/LabelMapping"
responses:
'201':
description: "the label added to the telegraf config"
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/telegrafs/{telegrafID}/labels/{labelID}':
delete:
operationId: DeleteTelegrafsIDLabelsID
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: labelID
schema:
type: string
required: true
description: the label ID
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"
'/telegrafs/{telegrafID}/members':
get:
operationId: GetTelegrafsIDMembers
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:
operationId: PostTelegrafsIDMembers
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:
operationId: DeleteTelegrafsIDMembersID
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:
operationId: GetTelegrafsIDOwners
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:
operationId: PostTelegrafsIDOwners
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:
operationId: DeleteTelegrafsIDOwnersID
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"
/scrapers:
get:
operationId: GetScrapers
tags:
- ScraperTargets
summary: get all scraper targets
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: name
description: specifies the name of the scraper target.
schema:
type: string
- in: query
name: id
description: ID list of scraper targets to return. If both this and owner are specified, only ids is used.
schema:
type: array
items:
type: string
- in: query
name: orgID
description: specifies the organization id of the scraper target
schema:
type: string
- in: query
name: org
description: specifies the organization name of the scraper target
schema:
type: string
responses:
'200':
description: all scraper targets
content:
application/json:
schema:
$ref: "#/components/schemas/ScraperTargetResponses"
post:
operationId: PostScrapers
summary: create a scraper target
tags:
- ScraperTargets
parameters:
- $ref: '#/components/parameters/TraceSpan'
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"
'/scrapers/{scraperTargetID}':
get:
operationId: GetScrapersID
tags:
- ScraperTargets
summary: get a scraper target by id
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
required: true
schema:
type: string
description: id of the scraper target
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"
delete:
operationId: DeleteScrapersID
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:
operationId: PatchScrapersID
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"
'/scrapers/{scraperTargetID}/labels':
get:
operationId: GetScrapersIDLabels
tags:
- ScraperTargets
summary: list all labels for a scraper targets
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: ID of the scraper target
responses:
'200':
description: a list of all labels for a scraper target
content:
application/json:
schema:
$ref: "#/components/schemas/LabelsResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostScrapersIDLabels
tags:
- ScraperTargets
summary: add a label to a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: ID of the scraper target
requestBody:
description: label to add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/LabelMapping"
responses:
'201':
description: the newly added label
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/scrapers/{scraperTargetID}/labels/{labelID}':
delete:
operationId: DeleteScrapersIDLabelsID
tags:
- ScraperTargets
summary: delete a label from a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: ID of the scraper target
- in: path
name: labelID
schema:
type: string
required: true
description: ID of the label
responses:
'204':
description: delete has been accepted
'404':
description: scraper target not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
operationId: PatchScrapersIDLabelsID
tags:
- ScraperTargets
summary: update a label from a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: ID of the scraper target
- in: path
name: labelID
schema:
type: string
required: true
description: ID of the label
requestBody:
description: label update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Label"
responses:
'200':
description: updated successfully
'404':
description: scraper target not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/scrapers/{scraperTargetID}/members':
get:
operationId: GetScrapersIDMembers
tags:
- Users
- ScraperTargets
summary: List all users with member privileges for a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: ID of the scraper target
responses:
'200':
description: a list of scraper target members
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMembers"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostScrapersIDMembers
tags:
- Users
- ScraperTargets
summary: Add scraper target member
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: ID of the scraper target
requestBody:
description: user to add as member
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: member added to scraper targets
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceMember"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/scrapers/{scraperTargetID}/members/{userID}':
delete:
operationId: DeleteScrapersIDMembersID
tags:
- Users
- ScraperTargets
summary: removes a member from a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of member to remove
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: ID of the scraper target
responses:
'204':
description: member removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/scrapers/{scraperTargetID}/owners':
get:
operationId: GetScrapersIDOwners
tags:
- Users
- ScraperTargets
summary: List all owners of a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: ID of the scraper target
responses:
'200':
description: a list of scraper target owners
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwners"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostScrapersIDOwners
tags:
- Users
- ScraperTargets
summary: Add scraper target owner
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: ID of the scraper target
requestBody:
description: user to add as owner
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: scraper target owner added
content:
application/json:
schema:
$ref: "#/components/schemas/ResourceOwner"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/scrapers/{scraperTargetID}/owners/{userID}':
delete:
operationId: DeleteScrapersIDOwnersID
tags:
- Users
- ScraperTargets
summary: removes an owner from a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: ID of owner to remove
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: ID of the scraper target
responses:
'204':
description: owner removed
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/variables:
get:
operationId: GetVariables
tags:
- Variables
summary: get all variables
parameters:
- $ref: '#/components/parameters/TraceSpan'
- 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
responses:
'200':
description: all variables for an organization
content:
application/json:
schema:
$ref: "#/components/schemas/Variables"
'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:
operationId: PostVariables
summary: create a variable
tags:
- Variables
parameters:
- $ref: '#/components/parameters/TraceSpan'
requestBody:
description: variable to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Variable"
responses:
'201':
description: variable created
content:
application/json:
schema:
$ref: "#/components/schemas/Variable"
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/variables/{variableID}':
get:
operationId: GetVariablesID
tags:
- Variables
summary: get a variable
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: variableID
required: true
schema:
type: string
description: ID of the variable
responses:
'200':
description: variable found
content:
application/json:
schema:
$ref: "#/components/schemas/Variable"
'404':
description: variable not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
operationId: DeleteVariablesID
tags:
- Variables
summary: delete a variable
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: variableID
required: true
schema:
type: string
description: id of the variable
responses:
'204':
description: variable deleted
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
operationId: PatchVariablesID
summary: update a variable
tags:
- Variables
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: variableID
required: true
schema:
type: string
description: id of the variable
requestBody:
description: variable update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Variable"
responses:
'200':
description: variable updated
content:
application/json:
schema:
$ref: "#/components/schemas/Variable"
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
put:
operationId: PutVariablesID
summary: replace a variable
tags:
- Variables
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: variableID
required: true
schema:
type: string
description: id of the variable
requestBody:
description: variable to replace
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Variable"
responses:
'200':
description: variable updated
content:
application/json:
schema:
$ref: "#/components/schemas/Variable"
default:
description: internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/variables/{variableID}/labels':
get:
operationId: GetVariablesIDLabels
tags:
- Variables
summary: list all labels for a variable
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: variableID
schema:
type: string
required: true
description: ID of the variable
responses:
'200':
description: a list of all labels for a variable
content:
application/json:
schema:
$ref: "#/components/schemas/LabelsResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostVariablesIDLabels
tags:
- Variables
summary: add a label to a variable
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: variableID
schema:
type: string
required: true
description: ID of the variable
requestBody:
description: label to add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/LabelMapping"
responses:
'201':
description: the newly added label
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/variables/{variableID}/labels/{labelID}':
delete:
operationId: DeleteVariablesIDLabelsID
tags:
- Variables
summary: delete a label from a variable
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: variableID
schema:
type: string
required: true
description: ID of the variable
- in: path
name: labelID
schema:
type: string
required: true
description: the label id to delete
responses:
'204':
description: delete has been accepted
'404':
description: variable not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/write:
post:
operationId: PostWrite
tags:
- Write
summary: write time-series data into influxdb
requestBody:
description: line protocol body
required: true
content:
text/plain:
schema:
type: string
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:
$ref: "#/components/schemas/WritePrecision"
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:
servers:
- url: /
get:
operationId: GetReady
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/Ready"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/health:
servers:
- url: /
get:
operationId: GetHealth
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/HealthCheck"
'503':
description: the instance is unhealthy
content:
application/json:
schema:
$ref: "#/components/schemas/HealthCheck"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/sources:
post:
operationId: PostSources
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:
operationId: GetSources
tags:
- Sources
summary: Get all sources
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: org
description: specifies the organization of the resource
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}:
delete:
operationId: DeleteSourcesID
tags:
- Sources
summary: Delete a source
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: sourceID
schema:
type: string
required: true
description: ID of the source
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:
operationId: PatchSourcesID
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:
operationId: GetSourcesID
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:
operationId: GetSourcesIDHealth
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/HealthCheck"
'503':
description: the source is not healthy
content:
application/json:
schema:
$ref: "#/components/schemas/HealthCheck"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/sources/{sourceID}/buckets:
get:
operationId: GetSourcesIDBuckets
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
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"
/labels:
post:
operationId: PostLabels
tags:
- Labels
summary: Create a label
requestBody:
description: label to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/LabelCreateRequest"
responses:
'201':
description: Added label
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
get:
operationId: GetLabels
tags:
- Labels
summary: Get all labels
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: orgID
description: specifies the organization of the resource
schema:
type: string
responses:
'200':
description: all labels
content:
application/json:
schema:
$ref: "#/components/schemas/LabelsResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/labels/{labelID}:
get:
operationId: GetLabelsID
tags:
- Labels
summary: Get a label
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: labelID
schema:
type: string
required: true
description: ID of label to update
responses:
'200':
description: a label
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
operationId: PatchLabelsID
tags:
- Labels
summary: Update a single label
requestBody:
description: label update
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/LabelUpdate"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: labelID
schema:
type: string
required: true
description: ID of label to update
responses:
'200':
description: Updated label
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
'404':
description: label not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
operationId: DeleteLabelsID
tags:
- Labels
summary: Delete a label
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: labelID
schema:
type: string
required: true
description: ID of label to delete
responses:
'204':
description: delete has been accepted
'404':
description: label not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/dashboards:
post:
operationId: PostDashboards
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/CreateDashboardRequest"
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:
operationId: GetDashboards
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
- in: query
name: orgID
description: specifies the organization id of the resource
schema:
type: string
- in: query
name: org
description: specifies the organization name of the resource
schema:
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:
operationId: GetDashboardsID
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:
operationId: PatchDashboardsID
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:
operationId: DeleteDashboardsID
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:
operationId: PutDashboardsIDCells
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:
operationId: PostDashboardsIDCells
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:
operationId: PatchDashboardsIDCellsID
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:
operationId: DeleteDashboardsIDCellsID
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:
operationId: GetDashboardsIDCellsIDView
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:
operationId: PatchDashboardsIDCellsIDView
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:
operationId: GetDashboardsIDLabels
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:
$ref: "#/components/schemas/LabelsResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostDashboardsIDLabels
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/LabelMapping"
responses:
'201':
description: the label added to the dashboard
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/dashboards/{dashboardID}/labels/{labelID}':
delete:
operationId: DeleteDashboardsIDLabelsID
tags:
- Dashboards
summary: delete a label from a dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: ID of the dashboard
- in: path
name: labelID
schema:
type: string
required: true
description: the label id to delete
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}/members':
get:
operationId: GetDashboardsIDMembers
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:
operationId: PostDashboardsIDMembers
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:
operationId: DeleteDashboardsIDMembersID
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:
operationId: GetDashboardsIDOwners
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:
operationId: PostDashboardsIDOwners
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:
operationId: DeleteDashboardsIDOwnersID
tags:
- Users
- Dashboards
summary: removes an owner from a 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"
'/dashboards/{dashboardID}/logs':
get:
operationId: GetDashboardsIDLogs
tags:
- Dashboards
- OperationLogs
summary: Retrieve operation logs for a dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
- in: path
name: dashboardID
required: true
description: ID of the dashboard
schema:
type: string
responses:
'200':
description: operation logs for the dashboard
content:
application/json:
schema:
$ref: "#/components/schemas/OperationLogs"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/query/ast:
post:
operationId: PostQueryAst
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:
schema:
$ref: "#/components/schemas/ASTResponse"
default:
description: Any response other than 200 is an internal server error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/query/suggestions:
get:
operationId: GetQuerySuggestions
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:
operationId: GetQuerySuggestionsName
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:
operationId: GetAuthorizations
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
- in: query
name: orgID
schema:
type: string
description: filter authorizations belonging to a org id
- in: query
name: org
schema:
type: string
description: filter authorizations belonging to a org 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:
operationId: PostAuthorizations
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:
operationId: GetAuthorizationsID
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:
operationId: PatchAuthorizationsID
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/AuthorizationUpdateRequest"
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:
operationId: DeleteAuthorizationsID
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:
operationId: PostQueryAnalyze
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:
post:
operationId: PostQuery
tags:
- Query
summary: query an influx
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: header
name: Content-Type
schema:
type: string
enum:
- application/json
- application/vnd.flux
- in: query
name: org
description: specifies the name of the organization executing the query; if both orgID and org are specified, orgID takes precedence.
schema:
type: string
- in: query
name: orgID
description: specifies the ID of the organization executing the query; if both orgID and org are specified, orgID takes precedence.
schema:
type: string
requestBody:
description: flux query or specification to execute
content:
application/json:
schema:
$ref: "#/components/schemas/Query"
application/vnd.flux:
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
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:
operationId: GetBuckets
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:
operationId: PostBuckets
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:
operationId: GetBucketsID
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:
operationId: PatchBucketsID
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:
operationId: DeleteBucketsID
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:
operationId: GetBucketsIDLabels
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:
$ref: "#/components/schemas/LabelsResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostBucketsIDLabels
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/LabelMapping"
responses:
'201':
description: the newly added label
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/buckets/{bucketID}/labels/{labelID}':
delete:
operationId: DeleteBucketsIDLabelsID
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: labelID
schema:
type: string
required: true
description: the label id 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}/members':
get:
operationId: GetBucketsIDMembers
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/ResourceMembers"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostBucketsIDMembers
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:
operationId: DeleteBucketsIDMembersID
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:
operationId: GetBucketsIDOwners
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/ResourceOwners"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostBucketsIDOwners
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:
operationId: DeleteBucketsIDOwnersID
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"
'/buckets/{bucketID}/logs':
get:
operationId: GetBucketsIDLogs
tags:
- Buckets
- OperationLogs
summary: Retrieve operation logs for a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
- in: path
name: bucketID
required: true
description: ID of the bucket
schema:
type: string
responses:
'200':
description: operation logs for the bucket
content:
application/json:
schema:
$ref: "#/components/schemas/OperationLogs"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/orgs:
get:
operationId: GetOrgs
tags:
- Organizations
summary: List all organizations
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: org
schema:
type: string
description: filter organizations to a specific organization name
- in: query
name: orgID
schema:
type: string
description: filter organizations to a specific organization ID
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:
operationId: PostOrgs
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:
operationId: GetOrgsID
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:
operationId: PatchOrgsID
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:
operationId: DeleteOrgsID
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:
operationId: GetOrgsIDLabels
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:
$ref: "#/components/schemas/LabelsResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostOrgsIDLabels
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/LabelMapping"
responses:
'201':
description: returns the created label
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/orgs/{orgID}/labels/{labelID}':
delete:
operationId: DeleteOrgsIDLabelsID
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: labelID
schema:
type: string
required: true
description: the label id
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}/secrets':
get:
operationId: GetOrgsIDSecrets
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/SecretKeysResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
operationId: PatchOrgsIDSecrets
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:
operationId: PostOrgsIDSecrets
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:
operationId: GetOrgsIDMembers
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/ResourceMembers"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostOrgsIDMembers
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:
operationId: DeleteOrgsIDMembersID
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:
operationId: GetOrgsIDOwners
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/ResourceOwners"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostOrgsIDOwners
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:
operationId: DeleteOrgsIDOwnersID
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"
'/orgs/{orgID}/logs':
get:
operationId: GetOrgsIDLogs
tags:
- Organizations
- OperationLogs
summary: Retrieve operation logs for an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
- in: path
name: orgID
required: true
description: ID of the organization
schema:
type: string
responses:
'200':
description: operation logs for the organization
content:
application/json:
schema:
$ref: "#/components/schemas/OperationLogs"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/tasks:
get:
operationId: GetTasks
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 name
- in: query
name: orgID
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:
operationId: PostTasks
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/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:
operationId: GetTasksID
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:
operationId: PatchTasksID
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:
- $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:
operationId: DeleteTasksID
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:
operationId: GetTasksIDRuns
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: 500
default: 100
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:
$ref: "#/components/schemas/Runs"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostTasksIDRuns
tags:
- Tasks
summary: manually start a run of the task now overriding the current schedule.
parameters:
- $ref: '#/components/parameters/TraceSpan'
- 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:
operationId: GetTasksIDRunsID
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:
operationId: PostTasksIDRunsIDRetry
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:
operationId: GetTasksIDLogs
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:
operationId: GetTasksIDRunsIDLogs
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:
operationId: GetTasksIDLabels
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:
$ref: "#/components/schemas/LabelsResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostTasksIDLabels
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/LabelMapping"
responses:
'200':
description: a list of all labels for a task
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}/labels/{labelID}':
delete:
operationId: DeleteTasksIDLabelsID
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: labelID
schema:
type: string
required: true
description: the label id
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"
/me:
get:
operationId: GetMe
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:
operationId: PutMePassword
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 successfully updated
default:
description: unsuccessful authentication
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/tasks/{taskID}/members':
get:
operationId: GetTasksIDMembers
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:
operationId: PostTasksIDMembers
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:
operationId: DeleteTasksIDMembersID
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:
operationId: GetTasksIDOwners
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:
operationId: PostTasksIDOwners
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:
operationId: DeleteTasksIDOwnersID
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:
operationId: GetUsers
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:
operationId: PostUsers
tags:
- Users
summary: Create a user
parameters:
- $ref: '#/components/parameters/TraceSpan'
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:
operationId: GetUsersID
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:
operationId: PatchUsersID
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:
operationId: DeleteUsersID
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:
operationId: PutUsersIDPassword
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:
'204':
description: password successfully updated
default:
description: unsuccessful authentication
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/users/{userID}/logs':
get:
operationId: GetUsersIDLogs
tags:
- Users
- OperationLogs
summary: Retrieve operation logs for a user
parameters:
- $ref: '#/components/parameters/TraceSpan'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
- in: path
name: userID
required: true
description: ID of the user
schema:
type: string
responses:
'200':
description: operation logs for the user
content:
application/json:
schema:
$ref: "#/components/schemas/OperationLogs"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/checks:
get:
operationId: GetChecks
tags:
- Checks
summary: Get all checks
parameters:
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
- in: query
name: orgID
required: true
description: only show checks belonging to specified organization
schema:
type: string
responses:
'200':
description: A list of checks
content:
application/json:
schema:
$ref: "#/components/schemas/Checks"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: CreateCheck
tags:
- Checks
summary: Add new check
requestBody:
description: check to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Check"
responses:
'201':
description: Check created
content:
application/json:
schema:
$ref: "#/components/schemas/Check"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/checks/{checkID}':
get:
operationId: GetChecksID
tags:
- Checks
summary: Get an check
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: checkID
schema:
type: string
required: true
description: ID of check
responses:
'200':
description: the check requested
content:
application/json:
schema:
$ref: "#/components/schemas/Check"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
operationId: PatchChecksID
tags:
- Checks
summary: Update a check
requestBody:
description: check update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/Check"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: checkID
schema:
type: string
required: true
description: ID of check
responses:
'200':
description: An updated check
content:
application/json:
schema:
$ref: "#/components/schemas/Check"
'404':
description: The check was not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
operationId: DeleteChecksID
tags:
- Checks
summary: Delete a check
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: checkID
schema:
type: string
required: true
description: ID of check
responses:
'204':
description: delete has been accepted
'404':
description: The check was not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/notificationRules:
get:
operationId: GetNotificationRules
tags:
- NotificationRules
summary: Get all notification rules
parameters:
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
- in: query
name: orgID
required: true
description: only show notification rules belonging to specified organization
schema:
type: string
- in: query
name: checkID
description: only show notifications that belong to the specified check
schema:
type: string
responses:
'200':
description: A list of notification rules
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationRules"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: CreateNotificationRule
tags:
- NotificationRules
summary: Add new notification rule
requestBody:
description: notificationRule to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationRule"
responses:
'201':
description: Notification rule created
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationRule"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/notificationRules/{ruleID}':
get:
operationId: GetNotificationRulesID
tags:
- NotificationRules
summary: Get a notification rule
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: ruleID
schema:
type: string
required: true
description: ID of notification rule
responses:
'200':
description: the notification rule requested
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationRule"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
operationId: PatchNotificationRulesID
tags:
- NotificationRules
summary: Update a notification rule
requestBody:
description: notification rule update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationRule"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: ruleID
schema:
type: string
required: true
description: ID of notification rule
responses:
'200':
description: An updated notification rule
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationRule"
'404':
description: The notification rule was not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
operationId: DeleteNotificationRulesID
tags:
- NotificationRules
summary: Delete a notification rule
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: ruleID
schema:
type: string
required: true
description: ID of notification rule
responses:
'204':
description: delete has been accepted
'404':
description: The check was not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/notificationEndpoints:
get:
operationId: GetNotificationEndpoints
tags:
- NotificationEndpoints
summary: Get all notification endpoints
parameters:
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
- in: query
name: orgID
required: true
description: only show notification endpoints belonging to specified organization
schema:
type: string
responses:
'200':
description: A list of notification rules
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationEndpoints"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: CreateNotificationEndpoint
tags:
- NotificationEndpoints
summary: Add new notification endpoint
requestBody:
description: notificationEndpoint to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationEndpoint"
responses:
'201':
description: Notification rule created
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationRule"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/notificationEndpoints/{endpointID}':
get:
operationId: GetNotificationEndpointsID
tags:
- NotificationEndpoints
summary: Get a notification endpoint
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: endpointID
schema:
type: string
required: true
description: ID of notification endpoint
responses:
'200':
description: the notification endpoint requested
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationEndpoint"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
patch:
operationId: PatchNotificationEndpointsID
tags:
- NotificationEndpoints
summary: Update a notification endpoint
requestBody:
description: check update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationEndpoint"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: endpointID
schema:
type: string
required: true
description: ID of notification endpoint
responses:
'200':
description: An updated notification endpoint
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationEndpoint"
'404':
description: The notification endpoint was not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
delete:
operationId: DeleteNotificationEndpointsID
tags:
- NotificationEndpoints
summary: Delete a notification endpoint
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: endpointID
schema:
type: string
required: true
description: ID of notification endpoint
responses:
'204':
description: delete has been accepted
'404':
description: The endpoint was not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: unexpected error
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.
type: object
required:
- query
properties:
extern:
$ref: "#/components/schemas/File"
query:
description: query script to execute.
type: string
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"
Package:
description: represents a complete package source tree
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
path:
description: package import path
type: string
package:
description: package name
type: string
files:
description: package files
type: array
items:
$ref: "#/components/schemas/File"
File:
description: represents a source from a single file
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
name:
description: name of the file
type: string
package:
$ref: "#/components/schemas/PackageClause"
imports:
description: a list of package imports
type: array
items:
$ref: "#/components/schemas/ImportDeclaration"
body:
description: list of Flux statements
type: array
items:
$ref: "#/components/schemas/Statement"
PackageClause:
description: defines a package identifier
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
name:
$ref: "#/components/schemas/Identifier"
ImportDeclaration:
description: declares a package import
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
as:
$ref: "#/components/schemas/Identifier"
path:
$ref: "#/components/schemas/StringLiteral"
Node:
oneOf:
- $ref: "#/components/schemas/Expression"
- $ref: "#/components/schemas/Block"
Block:
description: a set of statements
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
body:
description: block body
type: array
items:
$ref: "#/components/schemas/Statement"
Statement:
oneOf:
- $ref: "#/components/schemas/BadStatement"
- $ref: "#/components/schemas/VariableAssignment"
- $ref: "#/components/schemas/MemberAssignment"
- $ref: "#/components/schemas/ExpressionStatement"
- $ref: "#/components/schemas/ReturnStatement"
- $ref: "#/components/schemas/OptionStatement"
- $ref: "#/components/schemas/BuiltinStatement"
- $ref: "#/components/schemas/TestStatement"
BadStatement:
description: a placeholder for statements for which no correct statement nodes can be created
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
text:
description: raw source text
type: string
VariableAssignment:
description: represents the declaration of a variable
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
id:
$ref: "#/components/schemas/Identifier"
init:
$ref: "#/components/schemas/Expression"
MemberAssignment:
description: object property assignment
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
member:
$ref: "#/components/schemas/MemberExpression"
init:
$ref: "#/components/schemas/Expression"
ExpressionStatement:
description: may consist of an expression that does not return a value and is executed solely for its side-effects
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
expression:
$ref: "#/components/schemas/Expression"
ReturnStatement:
description: defines an expression to return
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
argument:
$ref: "#/components/schemas/Expression"
OptionStatement:
description: a single variable declaration
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
assignment:
oneOf:
- $ref: "#/components/schemas/VariableAssignment"
- $ref: "#/components/schemas/MemberAssignment"
BuiltinStatement:
description: declares a builtin identifier and its type
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
id:
$ref: "#/components/schemas/Identifier"
TestStatement:
description: declares a Flux test case
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
assignment:
$ref: "#/components/schemas/VariableAssignment"
Expression:
oneOf:
- $ref: "#/components/schemas/ArrayExpression"
- $ref: "#/components/schemas/FunctionExpression"
- $ref: "#/components/schemas/BinaryExpression"
- $ref: "#/components/schemas/CallExpression"
- $ref: "#/components/schemas/ConditionalExpression"
- $ref: "#/components/schemas/LogicalExpression"
- $ref: "#/components/schemas/MemberExpression"
- $ref: "#/components/schemas/IndexExpression"
- $ref: "#/components/schemas/ObjectExpression"
- $ref: "#/components/schemas/PipeExpression"
- $ref: "#/components/schemas/UnaryExpression"
- $ref: "#/components/schemas/BooleanLiteral"
- $ref: "#/components/schemas/DateTimeLiteral"
- $ref: "#/components/schemas/DurationLiteral"
- $ref: "#/components/schemas/FloatLiteral"
- $ref: "#/components/schemas/IntegerLiteral"
- $ref: "#/components/schemas/PipeLiteral"
- $ref: "#/components/schemas/RegexpLiteral"
- $ref: "#/components/schemas/StringLiteral"
- $ref: "#/components/schemas/UnsignedIntegerLiteral"
- $ref: "#/components/schemas/Identifier"
ArrayExpression:
description: used to create and directly specify the elements of an array object
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
elements:
description: elements of the array
type: array
items:
$ref: "#/components/schemas/Expression"
FunctionExpression:
description: function expression
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
params:
description: function parameters
type: array
items:
$ref: "#/components/schemas/Property"
body:
$ref: "#/components/schemas/Node"
BinaryExpression:
description: uses binary operators to act on two operands in an expression
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
operator:
type: string
left:
$ref: "#/components/schemas/Expression"
right:
$ref: "#/components/schemas/Expression"
CallExpression:
description: represents a function call
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
callee:
$ref: "#/components/schemas/Expression"
arguments:
description: function arguments
type: array
items:
$ref: "#/components/schemas/Expression"
ConditionalExpression:
description: selects one of two expressions, `Alternate` or `Consequent`, depending on a third boolean expression, `Test`
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
test:
$ref: "#/components/schemas/Expression"
alternate:
$ref: "#/components/schemas/Expression"
consequent:
$ref: "#/components/schemas/Expression"
LogicalExpression:
description: represents the rule conditions that collectively evaluate to either true or false
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
operator:
type: string
left:
$ref: "#/components/schemas/Expression"
right:
$ref: "#/components/schemas/Expression"
MemberExpression:
description: represents accessing a property of an object
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
object:
$ref: "#/components/schemas/Expression"
property:
$ref: "#/components/schemas/PropertyKey"
IndexExpression:
description: represents indexing into an array
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
array:
$ref: "#/components/schemas/Expression"
index:
$ref: "#/components/schemas/Expression"
ObjectExpression:
description: allows the declaration of an anonymous object within a declaration
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
properties:
description: object properties
type: array
items:
$ref: "#/components/schemas/Property"
PipeExpression:
description: call expression with pipe argument
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
argument:
$ref: "#/components/schemas/Expression"
call:
$ref: "#/components/schemas/CallExpression"
UnaryExpression:
description: uses operators to act on a single operand in an expression
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
operator:
type: string
argument:
$ref: "#/components/schemas/Expression"
BooleanLiteral:
description: represents boolean values
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
value:
type: boolean
DateTimeLiteral:
description: represents an instant in time with nanosecond precision using the syntax of golang's RFC3339 Nanosecond variant
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
value:
type: string
DurationLiteral:
description: represents the elapsed time between two instants as an int64 nanosecond count with syntax of golang's time.Duration
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
values:
description: duration values
type: array
items:
$ref: "#/components/schemas/Duration"
FloatLiteral:
description: represents floating point numbers according to the double representations defined by the IEEE-754-1985
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
value:
type: number
IntegerLiteral:
description: represents integer numbers
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
value:
type: string
PipeLiteral:
description: represents a specialized literal value, indicating the left hand value of a pipe expression
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
RegexpLiteral:
description: expressions begin and end with `/` and are regular expressions with syntax accepted by RE2
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
value:
type: string
StringLiteral:
description: expressions begin and end with double quote marks
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
value:
type: string
UnsignedIntegerLiteral:
description: represents integer numbers
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
value:
type: string
Duration:
description: a pair consisting of length of time and the unit of time measured. It is the atomic unit from which all duration literals are composed.
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
magnitude:
type: integer
unit:
type: string
Property:
description: the value associated with a key
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
key:
$ref: "#/components/schemas/PropertyKey"
value:
$ref: "#/components/schemas/Expression"
PropertyKey:
oneOf:
- $ref: "#/components/schemas/Identifier"
- $ref: "#/components/schemas/StringLiteral"
Identifier:
description: a valid Flux identifier
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
name:
type: string
NodeType:
description: type of AST node
type: string
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:
required: [action, resource]
properties:
action:
type: string
enum:
- read
- write
resource:
type: object
required: [type]
properties:
type:
type: string
enum:
- authorizations
- buckets
- dashboards
- orgs
- sources
- tasks
- telegrafs
- users
- variables
- scrapers
- secrets
- labels
- views
- documents
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.
orgID:
type: string
nullable: true
description: if orgID is set that is a permission for all resources owned my that org. if it is not set it is a permission for all resources of that resource type.
org:
type: string
nullable: true
description: optional name of the organization of the organization with orgID.
AuthorizationUpdateRequest:
properties:
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.
Authorization:
required: [orgID, permissions]
allOf:
- $ref: "#/components/schemas/AuthorizationUpdateRequest"
- type: object
properties:
orgID:
type: string
description: ID of org that authorization is scoped to.
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:
labels: "/api/v2/buckets/1/labels"
logs: "/api/v2/buckets/1/logs"
members: "/api/v2/buckets/1/members"
org: "/api/v2/orgs/2"
owners: "/api/v2/buckets/1/owners"
self: "/api/v2/buckets/1"
write: "/api/v2/write?org=2&bucket=1"
properties:
labels:
description: URL to retrieve labels for this bucket
$ref: "#/components/schemas/Link"
logs:
description: URL to retrieve operation logs for this bucket
$ref: "#/components/schemas/Link"
members:
description: URL to retrieve members that can read this bucket
$ref: "#/components/schemas/Link"
org:
description: URL to retrieve parent organization for this bucket
$ref: "#/components/schemas/Link"
owners:
description: URL to retrieve owners that can read and write to this bucket.
$ref: "#/components/schemas/Link"
self:
description: URL for this bucket
$ref: "#/components/schemas/Link"
write:
description: URL to write line protocol for this bucket
$ref: "#/components/schemas/Link"
id:
readOnly: true
type: string
name:
type: string
description:
type: string
orgID:
type: string
rp:
type: string
createdAt:
type: string
format: date-time
readOnly: true
updatedAt:
type: string
format: date-time
readOnly: true
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
format: uri
readOnly: true
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
OperationLog:
type: object
readOnly: true
properties:
description:
type: string
description: A description of the event that occurred.
example: Bucket Created
time:
type: string
description: Time event occurred, RFC3339Nano.
format: date-time
userID:
type: string
description: ID of the user who operated the event.
links:
type: object
properties:
user:
$ref: "#/components/schemas/Link"
OperationLogs:
type: object
properties:
logs:
type: array
items:
$ref: "#/components/schemas/OperationLog"
links:
$ref: "#/components/schemas/Links"
Organization:
properties:
links:
type: object
readOnly: true
example:
self: "/api/v2/orgs/1"
members: "/api/v2/orgs/1/members"
owners: "/api/v2/orgs/1/owners"
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"
logs: "/api/v2/orgs/1/logs"
properties:
self:
$ref: "#/components/schemas/Link"
members:
$ref: "#/components/schemas/Link"
owners:
$ref: "#/components/schemas/Link"
labels:
$ref: "#/components/schemas/Link"
secrets:
$ref: "#/components/schemas/Link"
buckets:
$ref: "#/components/schemas/Link"
tasks:
$ref: "#/components/schemas/Link"
dashboards:
$ref: "#/components/schemas/Link"
logs:
$ref: "#/components/schemas/Link"
id:
readOnly: true
type: string
name:
type: string
description:
type: string
createdAt:
type: string
format: date-time
readOnly: true
updatedAt:
type: string
format: date-time
readOnly: true
status:
description: if inactive the organization is inactive.
default: active
type: string
enum:
- active
- inactive
required: [name]
Organizations:
type: object
properties:
links:
$ref: "#/components/schemas/Links"
orgs:
type: array
items:
$ref: "#/components/schemas/Organization"
Runs:
type: object
properties:
links:
readOnly: true
$ref: "#/components/schemas/Links"
runs:
type: array
items:
$ref: "#/components/schemas/Run"
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
log:
description: An array of logs associated with the run.
type: array
items:
type: object
properties:
runID:
type: string
time:
type: string
message:
type: string
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
Tasks:
type: object
properties:
links:
readOnly: true
$ref: "#/components/schemas/Links"
tasks:
type: array
items:
$ref: "#/components/schemas/Task"
Task:
type: object
properties:
id:
readOnly: true
type: string
orgID:
description: The ID of the organization that owns this Task.
type: string
org:
description: The name of the organization that owns this Task.
type: string
name:
description: The name of the task.
type: string
description:
description: An optional 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"
authorizationID:
description: The ID of the authorization used when this task communicates with the query engine.
type: string
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, if set to zero it will remove this option and use 0 as the default.
type: string
latestCompleted:
description: Timestamp of latest scheduled, completed run, RFC3339.
type: string
format: date-time
readOnly: true
createdAt:
type: string
format: date-time
readOnly: true
updatedAt:
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"
labels: "/api/v2/tasks/1/labels"
runs: "/api/v2/tasks/1/runs"
logs: "/api/v2/tasks/1/logs"
properties:
self:
$ref: "#/components/schemas/Link"
owners:
$ref: "#/components/schemas/Link"
members:
$ref: "#/components/schemas/Link"
runs:
$ref: "#/components/schemas/Link"
logs:
$ref: "#/components/schemas/Link"
labels:
$ref: "#/components/schemas/Link"
required: [id, name, orgID, flux]
User:
properties:
id:
readOnly: true
type: string
oauthID:
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"
logs: "/api/v2/users/1/logs"
properties:
self:
type: string
format: uri
logs:
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
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
variables:
type: string
format: uri
me:
type: string
format: uri
orgs:
type: string
format: uri
query:
type: object
properties:
self:
type: string
format: uri
ast:
type: string
format: uri
analyze:
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
Error:
properties:
code:
description: code is the machine-readable error code.
readOnly: true
type: string
# This set of enumerations must remain in sync with the constants defined in errors.go
enum:
- internal error
- not found
- conflict
- invalid
- unprocessable entity
- empty value
- unavailable
- forbidden
- too many requests
- unauthorized
- method not allowed
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]
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!
ViewProperties:
properties:
queries:
type: array
items:
$ref: "#/components/schemas/DashboardQuery"
colors:
description: Colors define color encoding of data into a visualization
type: array
items:
$ref: "#/components/schemas/DashboardColor"
note:
type: string
showNoteWhenEmpty:
description: if true, will display note when empty
type: boolean
LinePlusSingleStatProperties:
allOf:
- $ref: '#/components/schemas/ViewProperties'
- type: object
properties:
axes:
$ref: '#/components/schemas/Axes'
type:
type: string
enum: ["line-plus-single-stat"]
legend:
$ref: '#/components/schemas/Legend'
prefix:
type: string
suffix:
type: string
decimalPlaces:
$ref: '#/components/schemas/DecimalPlaces'
XYViewProperties:
allOf:
- $ref: '#/components/schemas/ViewProperties'
- type: object
properties:
axes:
$ref: '#/components/schemas/Axes'
type:
type: string
enum: ["xy"]
legend:
$ref: '#/components/schemas/Legend'
geom:
type: string
enum: ["line", "step", "stacked", "bar"]
SingleStatViewProperties:
allOf:
- $ref: '#/components/schemas/ViewProperties'
- type: object
properties:
type:
type: string
enum: ["single-stat"]
prefix:
type: string
suffix:
type: string
legend:
$ref: '#/components/schemas/Legend'
decimalPlaces:
$ref: "#/components/schemas/DecimalPlaces"
HistogramViewProperties:
allOf:
- $ref: '#/components/schemas/ViewProperties'
- type: object
properties:
type:
type: string
enum: ["histogram"]
xColumn:
type: string
fillColumns:
type: array
items:
type: string
xDomain:
type: array
items:
type: number
format: float
xAxisLabel:
type: string
position:
type: string
binCount:
type: integer
GaugeViewProperties:
allOf:
- $ref: '#/components/schemas/ViewProperties'
- type: object
properties:
type:
type: string
enum: ["gauge"]
prefix:
type: string
suffix:
type: string
legend:
$ref: '#/components/schemas/Legend'
decimalPlaces:
$ref: '#/components/schemas/DecimalPlaces'
TableViewProperties:
allOf:
- $ref: '#/components/schemas/ViewProperties'
- type: object
properties:
type:
type: string
enum: ["table"]
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
decimalPlaces:
$ref: '#/components/schemas/DecimalPlaces'
MarkdownViewProperties:
type: object
properties:
type:
type: string
enum: ["markdown"]
note:
type: string
EmptyViewProperties:
properties:
type:
type: string
enum: ["empty"]
CheckViewProperties:
type: object
properties:
type:
type: string
enum: ["check"]
checkID:
type: string
check:
$ref: '#/components/schemas/Check'
Axes:
description: The viewport for a View's visualizations
type: object
properties:
x:
$ref: '#/components/schemas/Axis'
"y": # Quoted to prevent YAML parser from interpreting y as shorthand for true.
$ref: '#/components/schemas/Axis'
y2:
$ref: '#/components/schemas/Axis'
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
DecimalPlaces:
description: indicates whether decimal places should be enforced, and how many digits it should show.
type: object
properties:
isEnforced:
description: Indicates whether decimal point setting should be enforced
type: boolean
digits:
description: The number of digits after decimal to display
type: integer
format: int32
ConstantVariableProperties:
properties:
type:
type: string
enum: ["constant"]
values:
type: array
items:
type: string
MapVariableProperties:
properties:
type:
type: string
enum: ["map"]
values:
type: object
additionalProperties:
type: string
QueryVariableProperties:
properties:
type:
type: string
enum: ["query"]
values:
type: object
properties:
query:
type: string
language:
type: string
Variable:
type: object
required:
- name
- orgID
- arguments
properties:
links:
type: object
readOnly: true
properties:
self:
type: string
format: uri
org:
type: string
format: uri
labels:
type: string
format: uri
id:
readOnly: true
type: string
orgID:
type: string
name:
type: string
description:
type: string
selected:
type: array
items:
type: string
labels:
$ref: "#/components/schemas/Labels"
arguments:
type: object
oneOf:
- $ref: "#/components/schemas/QueryVariableProperties"
- $ref: "#/components/schemas/ConstantVariableProperties"
- $ref: "#/components/schemas/MapVariableProperties"
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
Variables:
type: object
example:
variables:
- 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:
variables:
type: array
items:
$ref: "#/components/schemas/Variable"
View:
properties:
links:
type: object
readOnly: true
properties:
self:
type: string
id:
readOnly: true
type: string
name:
type: string
properties:
oneOf:
- $ref: "#/components/schemas/LinePlusSingleStatProperties"
- $ref: "#/components/schemas/XYViewProperties"
- $ref: "#/components/schemas/SingleStatViewProperties"
- $ref: "#/components/schemas/HistogramViewProperties"
- $ref: "#/components/schemas/GaugeViewProperties"
- $ref: "#/components/schemas/TableViewProperties"
- $ref: "#/components/schemas/MarkdownViewProperties"
- $ref: "#/components/schemas/LogViewProperties"
- $ref: "#/components/schemas/EmptyViewProperties"
- $ref: "#/components/schemas/CheckViewProperties"
Views:
type: object
properties:
links:
type: object
properties:
self:
type: string
views:
type: array
items:
$ref: "#/components/schemas/View"
CellUpdate:
type: object
properties:
x:
type: integer
format: int32
"y": # Quoted to prevent YAML parser from interpreting y as shorthand for true.
type: integer
format: int32
w:
type: integer
format: int32
h:
type: integer
format: int32
CreateCell:
type: object
properties:
name:
type: string
x:
type: integer
format: int32
"y": # Quoted to prevent YAML parser from interpreting y as shorthand for true.
type: integer
format: int32
w:
type: integer
format: int32
h:
type: integer
format: int32
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:
id:
type: string
links:
type: object
properties:
self:
type: string
view:
type: string
x:
type: integer
format: int32
"y": # Quoted to prevent YAML parser from interpreting y as shorthand for true.
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:
type: object
properties:
secrets:
type: array
items:
type: string
SecretKeysResponse:
allOf:
- $ref: "#/components/schemas/SecretKeys"
- type: object
properties:
links:
readOnly: true
type: object
properties:
self:
type: string
org:
type: string
CreateDashboardRequest:
properties:
orgID:
type: string
description: id of the organization that owns the dashboard
name:
type: string
description: user-facing name of the dashboard
description:
type: string
description: user-facing description of the dashboard
required:
- orgID
- name
Dashboard:
type: object
allOf:
- $ref: "#/components/schemas/CreateDashboardRequest"
- type: object
properties:
links:
type: object
example:
self: "/api/v2/dashboards/1"
cells: "/api/v2/dashboards/1/cells"
owners: "/api/v2/dashboards/1/owners"
members: "/api/v2/dashboards/1/members"
logs: "/api/v2/dashboards/1/logs"
labels: "/api/v2/dashboards/1/labels"
org: "/api/v2/labels/1"
properties:
self:
$ref: "#/components/schemas/Link"
cells:
$ref: "#/components/schemas/Link"
members:
$ref: "#/components/schemas/Link"
owners:
$ref: "#/components/schemas/Link"
logs:
$ref: "#/components/schemas/Link"
labels:
$ref: "#/components/schemas/Link"
org:
$ref: "#/components/schemas/Link"
id:
readOnly: true
type: string
meta:
type: object
properties:
createdAt:
type: string
format: date-time
updatedAt:
type: string
format: date-time
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
query:
type: string
health:
type: string
buckets:
type: string
id:
type: string
orgID:
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
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
org:
type: string
description: name of the organization
bucket:
type: string
description: name of the bucket
links:
type: object
readOnly: true
example:
self: "/api/v2/scrapers/1"
owners: "/api/v2/scrapers/1/owners"
members: "/api/v2/scrapers/1/members"
bucket: "/api/v2/buckets/1"
organization: "/api/v2/orgs/1"
properties:
self:
$ref: "#/components/schemas/Link"
members:
$ref: "#/components/schemas/Link"
owners:
$ref: "#/components/schemas/Link"
bucket:
$ref: "#/components/schemas/Link"
organization:
$ref: "#/components/schemas/Link"
ScraperTargetResponses:
type: object
properties:
configurations:
type: array
items:
$ref: "#/components/schemas/ScraperTargetResponse"
DocumentMeta:
type: object
properties:
name:
type: string
type:
type: string
description:
type: string
version:
type: string
createdAt:
type: string
format: date-time
readOnly: true
updatedAt:
type: string
format: date-time
readOnly: true
required:
- name
- version
Document:
type: object
properties:
id:
type: string
readOnly: true
meta:
$ref: "#/components/schemas/DocumentMeta"
content:
type: object
labels:
$ref: "#/components/schemas/Labels"
links:
type: object
readOnly: true
example:
self: "/api/v2/documents/templates/1"
properties:
self:
description: URL for this document
$ref: "#/components/schemas/Link"
required:
- id
- meta
- content
DocumentCreate:
type: object
properties:
meta:
$ref: "#/components/schemas/DocumentMeta"
content:
type: object
org:
type: string
description: must specify one of orgID and org
orgID:
type: string
description: must specify one of orgID and org
labels:
type: array
description: this is an array of label IDs that will be added as labels to the document
items:
type: string
required:
- meta
- content
DocumentUpdate:
type: object
properties:
meta:
$ref: "#/components/schemas/DocumentMeta"
content:
type: object
DocumentListEntry:
type: object
properties:
id:
type: string
readOnly: true
meta:
$ref: "#/components/schemas/DocumentMeta"
labels:
$ref: "#/components/schemas/Labels"
links:
type: object
readOnly: true
example:
self: "/api/v2/documents/templates/1"
properties:
self:
description: URL for this document
$ref: "#/components/schemas/Link"
required:
- id
- meta
Documents:
type: object
properties:
documents:
type: array
items:
$ref: "#/components/schemas/DocumentListEntry"
TelegrafRequest:
type: object
properties:
name:
type: string
description:
type: string
agent:
type: object
properties:
collectionInterval:
type: integer
plugins:
type: array
items:
$ref: "#/components/schemas/TelegrafRequestPlugin"
orgID:
type: string
TelegrafRequestPlugin:
oneOf:
- $ref: '#/components/schemas/TelegrafPluginInputCpu'
- $ref: '#/components/schemas/TelegrafPluginInputDisk'
- $ref: '#/components/schemas/TelegrafPluginInputDiskio'
- $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'
TelegrafPluginInputCpu:
type: object
required:
- name
- type
properties:
name:
type: string
enum: ["cpu"]
type:
type: string
enum: ["input"]
comment:
type: string
TelegrafPluginInputDisk:
type: object
required:
- name
- type
properties:
name:
type: string
enum: ["disk"]
type:
type: string
enum: ["input"]
comment:
type: string
TelegrafPluginInputDiskio:
type:
object
required:
- name
- type
properties:
name:
type: string
enum: ["diskio"]
type:
type: string
enum: ["input"]
comment:
type: string
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'
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'
TelegrafPluginInputKernel:
type:
object
required:
- name
- type
properties:
name:
type: string
enum: ["kernel"]
type:
type: string
enum: ["input"]
comment:
type: string
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'
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'
TelegrafPluginInputMem:
type:
object
required:
- name
- type
properties:
name:
type: string
enum: ["mem"]
type:
type: string
enum: ["input"]
comment:
type: string
TelegrafPluginInputNetResponse:
type:
object
required:
- name
- type
properties:
name:
type: string
enum: ["net_response"]
type:
type: string
enum: ["input"]
comment:
type: string
TelegrafPluginInputNet:
type:
object
required:
- name
- type
properties:
name:
type: string
enum: ["net"]
type:
type: string
enum: ["input"]
comment:
type: string
TelegrafPluginInputNginx:
type:
object
required:
- name
- type
properties:
name:
type: string
enum: ["nginx"]
type:
type: string
enum: ["input"]
comment:
type: string
TelegrafPluginInputProcesses:
type:
object
required:
- name
- type
properties:
name:
type: string
enum: ["processes"]
type:
type: string
enum: ["input"]
comment:
type: string
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'
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'
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'
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'
TelegrafPluginInputSwap:
type:
object
required:
- name
- type
properties:
name:
type: string
enum: ["swap"]
type:
type: string
enum: ["input"]
comment:
type: string
TelegrafPluginInputSystem:
type:
object
required:
- name
- type
properties:
name:
type: string
enum: ["system"]
type:
type: string
enum: ["input"]
comment:
type: string
TelegrafPluginInputTail:
type:
object
required:
- name
- type
properties:
name:
type: string
enum: ["tail"]
type:
type: string
enum: ["input"]
comment:
type: string
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'
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'
Telegraf:
type: object
allOf:
- $ref: "#/components/schemas/TelegrafRequest"
- type: object
properties:
id:
type: string
readOnly: true
links:
type: object
readOnly: true
example:
self: "/api/v2/telegrafs/1"
lables: "/api/v2/telegrafs/1/labels"
owners: "/api/v2/telegrafs/1/owners"
members: "/api/v2/telegrafs/1/members"
properties:
self:
$ref: "#/components/schemas/Link"
labels:
$ref: "#/components/schemas/Link"
members:
$ref: "#/components/schemas/Link"
owners:
$ref: "#/components/schemas/Link"
labels:
readOnly: true
$ref: "#/components/schemas/Labels"
Telegrafs:
type: object
properties:
configurations:
type: array
items:
$ref: "#/components/schemas/Telegraf"
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:
description: true means that the influxdb instance has NOT had initial setup; false means that the database has been setup.
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
Ready:
type: object
properties:
status:
type: string
enum:
- ready
started:
type: string
format: date-time
example: "2019-03-13T10:09:33.891196-04:00"
up:
type: string
example: "14m45.911966424s"
HealthCheck:
type: object
required:
- name
- status
properties:
name:
type: string
message:
type: string
checks:
type: array
items:
$ref: "#/components/schemas/HealthCheck"
status:
type: string
enum:
- pass
- fail
Labels:
type: array
items:
$ref: "#/components/schemas/Label"
Label:
type: object
properties:
id:
readOnly: true
type: string
orgID:
readOnly: true
type: string
name:
type: string
properties:
type: object
additionalProperties:
type: string
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"}
LabelCreateRequest:
type: object
required: [orgID]
properties:
orgID:
type: string
name:
type: string
properties:
type: object
additionalProperties:
type: string
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"}
LabelUpdate:
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"}
LabelMapping:
type: object
properties:
labelID:
type: string
LabelsResponse:
type: object
properties:
labels:
$ref: "#/components/schemas/Labels"
links:
$ref: "#/components/schemas/Links"
LabelResponse:
type: object
properties:
label:
$ref: "#/components/schemas/Label"
links:
$ref: "#/components/schemas/Links"
ASTResponse:
description: contains the AST for the supplied Flux query
type: object
properties:
ast:
$ref: "#/components/schemas/Package"
WritePrecision:
type: string
enum:
- ms
- s
- us
- ns
TaskCreateRequest:
type: object
properties:
orgID:
description: The ID of the organization that owns this Task.
type: string
org:
description: The name 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
token:
description: The token to use for authenticating this task when it executes queries. If omitted, uses the token associated with the request that creates the task.
type: string
required: [flux]
TaskUpdateRequest:
type: object
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
name:
description: Override the 'name' option in the flux script.
type: string
every:
description: Override the 'every' option in the flux script.
type: string
cron:
description: Override the 'cron' option in the flux script.
type: string
offset:
description: Override the 'offset' option in the flux script.
type: string
token:
description: Override the existing token associated with the task.
type: string
Check:
oneOf:
- $ref: "#/components/schemas/DeadmanCheck"
- $ref: "#/components/schemas/ThresholdCheck"
Checks:
properties:
checks:
type: array
items:
$ref: "#/components/schemas/Check"
links:
$ref: "#/components/schemas/Links"
CheckBase:
properties:
id:
readOnly: true
type: string
name:
type: string
orgID:
description: the ID of the organization that owns this check.
type: string
authorizationID:
description: The ID of the authorization used to create this check.
type: string
readOnly: true
createdAt:
type: string
format: date-time
readOnly: true
updatedAt:
type: string
format: date-time
readOnly: true
query:
description: The Flux query to run for this check.
$ref: "#/components/schemas/DashboardQuery"
status:
description: The status of the check task.
default: active
type: string
enum: ["active", "inactive"]
every:
description: Check repetition interval
type: string
offset:
description: Duration to delay after the schedule, before executing check.
type: string
cron:
description: Check repetition interval in the form '* * * * * *';
type: string
tags:
description: tags to write to each status
type: array
items:
type: object
properties:
key:
type: string
value:
type: string
statusMessageTemplate:
description: template that is used to generate and write a status message
type: string
labels:
$ref: "#/components/schemas/Labels"
required: [name, orgID, query]
ThresholdCheck:
allOf:
- $ref: "#/components/schemas/CheckBase"
- type: object
properties:
thresholds:
type: array
items:
oneOf:
- $ref: "#/components/schemas/GreaterThreshold"
- $ref: "#/components/schemas/LesserThreshold"
- $ref: "#/components/schemas/RangeThreshold"
discriminator:
propertyName: type
DeadmanCheck:
allOf:
- $ref: "#/components/schemas/CheckBase"
- type: object
properties:
timeSince:
description: seconds before deadman triggers
type: integer
reportZero:
description: if only zero values reported since time, trigger alert
type: boolean
level:
$ref: "#/components/schemas/CheckStatusLevel"
ThresholdConfig:
properties:
level:
$ref: "#/components/schemas/CheckStatusLevel"
allValues:
description: if true, only alert if all values meet threshold
type: boolean
type:
type: string
GreaterThreshold:
allOf:
- $ref: "#/components/schemas/ThresholdConfig"
- type: object
properties:
value:
type: number
format: float
LesserThreshold:
allOf:
- $ref: "#/components/schemas/ThresholdConfig"
- type: object
properties:
value:
type: number
format: float
RangeThreshold:
allOf:
- $ref: "#/components/schemas/ThresholdConfig"
- type: object
properties:
min:
type: number
format: float
max:
type: number
format: float
within:
type: boolean
CheckStatusLevel:
description: the state to record if check matches a criteria
type: string
enum: ["UNKNOWN", "OK", "INFO", "CRIT", "WARN"]
NotificationRule:
oneOf:
- $ref: "#/components/schemas/SlackNotificationRule"
- $ref: "#/components/schemas/SMTPNotificationRule"
- $ref: "#/components/schemas/PagerDutyNotificationRule"
NotificationRules:
properties:
notificationRules:
type: array
items:
$ref: "#/components/schemas/NotificationRule"
links:
$ref: "#/components/schemas/Links"
NotificationRuleBase:
type: object
properties:
notifyEndpointID:
type: string
readOnly: true
orgID:
description: the ID of the organization that owns this notification rule.
type: string
authorizationID:
description: The ID of the authorization used to create this notification rule.
type: string
readOnly: true
createdAt:
type: string
format: date-time
readOnly: true
updatedAt:
type: string
format: date-time
readOnly: true
status:
description: The status of the notification rule task.
default: active
type: string
enum: ["active", "inactive"]
name:
description: human-readable name describing the notification rule
type: string
type:
description: the type of notification
type: string
enum: ['slack', 'smtp', 'pagerduty']
sleepUntil:
type: string
every:
description: notification repetition interval
type: string
offset:
description: Duration to delay after the schedule, before executing check.
type: string
cron:
description: notification repetition interval in the form '* * * * * *';
type: string
runbookLink:
type: string
limitEvery:
description: don't notify me more than <limit> times every <limitEvery> seconds. If set, limit cannot be empty.
type: integer
limit:
description: don't notify me more than <limit> times every <limitEvery> seconds. If set, limitEvery cannot be empty.
type: integer
tagRules:
description: list of tag rules the notification rule attempts to match
type: array
items:
$ref: "#/components/schemas/TagRule"
statusRules:
description: list of status rules the notification rule attempts to match
type: array
minItems: 1
items:
$ref: "#/components/schemas/StatusRule"
labels:
$ref: "#/components/schemas/Labels"
discriminator:
propertyName: type
TagRule:
type: object
properties:
key:
type: string
value:
type: string
operator:
type: string
enum: ["equal", "notequal", "equalregex","notequalregex"]
StatusRule:
type: object
properties:
currentLevel:
$ref: "#/components/schemas/LevelRule"
previousLevel:
$ref: "#/components/schemas/LevelRule"
count:
type: integer
period:
type: string
LevelRule:
type: object
properties:
level:
$ref: "#/components/schemas/CheckStatusLevel"
operation:
type: string
enum: ["equal", "notequal"]
SlackNotificationRule:
allOf:
- $ref: "#/components/schemas/NotificationRuleBase"
- type: object
properties:
channel:
type: string
messageTemplate:
type: string
SMTPNotificationRule:
allOf:
- $ref: "#/components/schemas/NotificationRuleBase"
- type: object
properties:
subjectTemplate:
type: string
bodyTemplate:
type: string
to:
type: string
PagerDutyNotificationRule:
allOf:
- $ref: "#/components/schemas/NotificationRuleBase"
- type: object
properties:
messageTemplate:
type: string
NotificationEndpoint:
oneOf:
- $ref: "#/components/schemas/SlackNotificationEndpoint"
- $ref: "#/components/schemas/SMTPNotificationEndpoint"
- $ref: "#/components/schemas/PagerDutyNotificationEndpoint"
- $ref: "#/components/schemas/WebhookNotificationEndpoint"
NotificationEndpoints:
properties:
notificationEndpoints:
type: array
items:
$ref: "#/components/schemas/NotificationEndpoint"
links:
$ref: "#/components/schemas/Links"
NotificationEndpointBase:
type: object
properties:
id:
type: string
orgID:
type: string
userID:
type: string
createdAt:
type: string
format: date-time
readOnly: true
updatedAt:
type: string
format: date-time
readOnly: true
name:
type: string
status:
description: The status of the endpoint.
default: active
type: string
enum: ["active", "inactive"]
labels:
$ref: "#/components/schemas/Labels"
discriminator:
propertyName: type
SlackNotificationEndpoint:
type: object
allOf:
- $ref: "#/components/schemas/NotificationEndpointBase"
- type: object
SMTPNotificationEndpoint:
type: object
allOf:
- $ref: "#/components/schemas/NotificationEndpointBase"
- type: object
PagerDutyNotificationEndpoint:
type: object
allOf:
- $ref: "#/components/schemas/NotificationEndpointBase"
- type: object
WebhookNotificationEndpoint:
type: object
allOf:
- $ref: "#/components/schemas/NotificationEndpointBase"
- type: object
securitySchemes:
BasicAuth:
type: http
scheme: basic