influxdb/http/swagger.yml

9849 lines
275 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"
'403':
description: user account is disabled
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 expiry
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
description: Returns `true` if no default user, organization, or bucket has been created.
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: Set up initial user, org and bucket
description: Post an onboarding request to set up 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: The template ID.
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: The template ID.
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
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: templateID
schema:
type: string
required: true
description: The template ID.
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: The template ID.
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: The template ID.
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: The template ID.
- 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: The organization ID the Telegraf config belongs to.
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: The Telegraf config ID.
- 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: The Telegraf config ID.
requestBody:
description: Telegraf config update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/TelegrafRequest"
responses:
'200':
description: An updated Telegraf config
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: The Telegraf config ID.
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: The Telegraf config ID.
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: The Telegraf config ID.
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: The Telegraf config ID.
- 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: The Telegraf config ID.
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 a member to a Telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: The Telegraf config ID.
requestBody:
description: User to add as member
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/AddResourceMemberRequestBody"
responses:
'201':
description: Member added to Telegraf config
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: Remove a member from a Telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of the member to remove.
- in: path
name: telegrafID
schema:
type: string
required: true
description: The Telegraf config ID.
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: The Telegraf config ID.
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 an owner to a Telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: telegrafID
schema:
type: string
required: true
description: The Telegraf config ID.
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: Remove an owner from a Telegraf config
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of the owner to remove.
- in: path
name: telegrafID
schema:
type: string
required: true
description: The Telegraf config ID.
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: List of scraper target IDs to return. If both `id` and `owner` are specified, only `id` 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: The scraper target ID.
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: The scraper target ID.
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: The scraper target ID.
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 target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: The scraper target ID.
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: The scraper target ID.
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: The scraper target ID.
- in: path
name: labelID
schema:
type: string
required: true
description: The label ID.
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 on a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: The scraper target ID.
- in: path
name: labelID
schema:
type: string
required: true
description: The label ID.
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: The scraper target ID.
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 a member to a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: The scraper target ID.
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: Remove a member from a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of member to remove.
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: The scraper target ID.
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: The scraper target ID.
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 an owner to a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: The scraper target ID.
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: Remove an owner from a scraper target
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of owner to remove.
- in: path
name: scraperTargetID
schema:
type: string
required: true
description: The scraper target ID.
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: The organization name.
schema:
type: string
- in: query
name: orgID
description: The organization ID.
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: The variable ID.
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: The variable ID.
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: The variable ID.
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: The variable ID.
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: The variable ID.
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: The variable ID.
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: The variable ID.
- 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: The return format for errors.
default: application/json
enum:
- application/json
- in: query
name: org
description: Specifies the destination organization for writes. Takes either the ID or Name interchangeably. If both `orgID` and `org` are specified, `org` takes precedence.
required: true
schema:
type: string
description: All points within batch are written to this organization.
- in: query
name: orgID
description: Specifies the ID of the destination organization for writes. If both `orgID` and `org` are specified, `org` takes precedence.
schema:
type: string
- in: query
name: bucket
description: 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: 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 an instance at startup
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
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: The organization name.
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: The source ID.
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: Update a Source
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: sourceID
schema:
type: string
required: true
description: The source ID.
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: The source ID.
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 the health of a source
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: sourceID
schema:
type: string
required: true
description: The source ID.
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 buckets in a source
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: sourceID
schema:
type: string
required: true
description: The source ID.
- in: query
name: org
description: The organization name.
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: The organization ID.
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: The ID of the 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 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: The ID of the 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: The ID of the 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: The owner ID.
schema:
type: string
- in: query
name: sortBy
description: The column to sort by.
schema:
type: string
enum:
- "ID"
- "CreatedAt"
- "UpdatedAt"
- in: query
name: id
description: List of dashboard IDs to return. If both `id and `owner` are specified, only `id` is used.
schema:
type: array
items:
type: string
- in: query
name: orgID
description: The organization ID.
schema:
type: string
- in: query
name: org
description: The organization name.
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 Dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: The ID of the 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 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: The ID of the 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: The ID of the 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 cells in a dashboard
description: Replaces all cells in a dashboard. This is used primarily to update the positional information of all cells.
requestBody:
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: The ID of the 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: The ID of the 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
description: Updates the non positional information related to a cell. Updates to a single cell's positional data could cause grid conflicts.
requestBody:
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: The ID of the dashboard to update.
- in: path
name: cellID
schema:
type: string
required: true
description: The ID of the 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: The ID of the dashboard to delete.
- in: path
name: cellID
schema:
type: string
required: true
description: The ID of the 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
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: The dashboard ID.
- in: path
name: cellID
schema:
type: string
required: true
description: The cell ID.
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:
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: The ID of the dashboard to update.
- in: path
name: cellID
schema:
type: string
required: true
description: The ID of the 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: The dashboard ID.
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: The dashboard ID.
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: The dashboard ID.
- in: path
name: labelID
schema:
type: string
required: true
description: The ID of the label 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: The dashboard ID.
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 a member to a dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: The dashboard ID.
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: Remove a member from a dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of the member to remove.
- in: path
name: dashboardID
schema:
type: string
required: true
description: The dashboard ID.
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: The dashboard ID.
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 an owner to a dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: dashboardID
schema:
type: string
required: true
description: The dashboard ID.
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: Remove an owner from a dashboard
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of the owner to remove.
- in: path
name: dashboardID
schema:
type: string
required: true
description: The dashboard ID.
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: The dashboard ID.
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}':
get:
operationId: GetQuerySuggestionsName
tags:
- Query
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: name
schema:
type: string
required: true
description: The name of the branching suggestion.
responses:
'200':
description: Suggestions for next functions in call chain
content:
application/json:
schema:
$ref: "#/components/schemas/FluxSuggestion"
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: Only show authorizations that belong to a user ID.
- in: query
name: user
schema:
type: string
description: Only show authorizations that belong to a user name.
- in: query
name: orgID
schema:
type: string
description: Only show authorizations that belong to an organization ID.
- in: query
name: org
schema:
type: string
description: Only show authorizations that belong to a organization 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: The ID of the 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 an authorization to be active or inactive
requestBody:
description: Authorization to update
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: The ID of the 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: The ID of the 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 InfluxDB
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: header
name: Accept-Encoding
description: The Accept-Encoding request HTTP header advertises which content encoding, usually a compression algorithm, the client is able to understand.
schema:
type: string
description: Specifies that the query response in the body should be encoded with gzip or not encoded with identity.
default: identity
enum:
- gzip
- identity
- 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. Takes either the ID or Name interchangeably. If both `orgID` and `org` are specified, `org` 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, `org` 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
headers:
Content-Encoding:
description: The Content-Encoding entity header is used to compress the media-type. When present, its value indicates which encodings were applied to the entity-body
schema:
type: string
description: Specifies that the response in the body is encoded with gzip or not encoded with identity.
default: identity
enum:
- gzip
- identity
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
'429':
description: Token is temporarily over quota. The Retry-After header describes when to try the read 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: Error processing query
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
/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: The organization name.
schema:
type: string
- in: query
name: orgID
description: The organization ID.
schema:
type: string
- in: query
name: name
description: Only returns buckets with a specific 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: The bucket ID.
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: The bucket ID.
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: The ID of the 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: The bucket ID.
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: The bucket ID.
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: The bucket ID.
- in: path
name: labelID
schema:
type: string
required: true
description: The ID of the label 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: The bucket ID.
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 a member to a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: The bucket ID.
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: Remove a member from a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of the member to remove.
- in: path
name: bucketID
schema:
type: string
required: true
description: The bucket ID.
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: The bucket ID.
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 an owner to a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: bucketID
schema:
type: string
required: true
description: The bucket ID.
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: Remove an owner from a bucket
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of the owner to remove.
- in: path
name: bucketID
schema:
type: string
required: true
description: The bucket ID.
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: The bucket ID.
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: The ID of the 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: The ID of the 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: The ID of the 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: The organization ID.
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: The organization ID.
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: The organization ID.
- 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: The organization ID.
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: Update secrets in an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: The organization ID.
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 secrets from an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: The organization ID.
requestBody:
description: Secret key to delete
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: The organization ID.
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 a member to an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: The organization ID.
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: Remove a member from an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of the member to remove.
- in: path
name: orgID
schema:
type: string
required: true
description: The organization ID.
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: The organization ID.
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 an owner to an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: orgID
schema:
type: string
required: true
description: The organization ID.
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: Remove an owner from an organization
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of the owner to remove.
- in: path
name: orgID
schema:
type: string
required: true
description: The organization ID.
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: The organization ID.
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 all tasks
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: query
name: name
description: Returns task with a specific name.
schema:
type: string
- in: query
name: after
schema:
type: string
description: Return tasks after a 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 a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: The task ID.
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: The task ID.
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: The ID of the 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: List runs for a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: The ID of the task to get runs for.
- in: query
name: after
schema:
type: string
description: Returns runs after a specific 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 task run, 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 for a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: The task ID.
- in: path
name: runID
schema:
type: string
required: true
description: The 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"
delete:
operationId: DeleteTasksIDRunsID
tags:
- Tasks
summary: Cancel a running task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: The task ID.
- in: path
name: runID
schema:
type: string
required: true
description: The run ID.
responses:
'204':
description: Delete has been accepted
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: The task ID.
- in: path
name: runID
schema:
type: string
required: true
description: The 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: The task ID.
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: The task ID.
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: The task ID.
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: The task ID.
- 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: Return the current 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 a 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: The task ID.
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 a member to a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: The task ID.
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: Remove a member from a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of the member to remove.
- in: path
name: taskID
schema:
type: string
required: true
description: The task ID.
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 owners of a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: The task ID.
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 an owner to a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: taskID
schema:
type: string
required: true
description: The task ID.
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: Remove an owner from a task
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of the owner to remove.
- in: path
name: taskID
schema:
type: string
required: true
description: The task ID.
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: The user ID.
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: The ID of the 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: Delete a user
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The ID of the 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 a password
security:
- BasicAuth: []
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: userID
schema:
type: string
required: true
description: The user ID.
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: The user ID.
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/TraceSpan'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
- in: query
name: orgID
required: true
description: Only show checks that belong to a specific organization ID.
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 a check
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: checkID
schema:
type: string
required: true
description: The check ID.
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"
put:
operationId: PutChecksID
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: The check ID.
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"
patch:
operationId: PatchChecksID
tags:
- Checks
summary: Update a check
requestBody:
description: Check update to apply
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/CheckPatch"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: checkID
schema:
type: string
required: true
description: The check ID.
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: The check ID.
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"
'/checks/{checkID}/labels':
get:
operationId: GetChecksIDLabels
tags:
- Checks
summary: List all labels for a check
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: checkID
schema:
type: string
required: true
description: The check ID.
responses:
'200':
description: A list of all labels for a check
content:
application/json:
schema:
$ref: "#/components/schemas/LabelsResponse"
default:
description: Unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostChecksIDLabels
tags:
- Checks
summary: Add a label to a check
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: checkID
schema:
type: string
required: true
description: The check ID.
requestBody:
description: Label to add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/LabelMapping"
responses:
'201':
description: The label was added to the check
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: Unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/checks/{checkID}/labels/{labelID}':
delete:
operationId: DeleteChecksIDLabelsID
tags:
- Checks
summary: Delete label from a check
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: checkID
schema:
type: string
required: true
description: The check ID.
- in: path
name: labelID
schema:
type: string
required: true
description: The ID of the label to delete.
responses:
'204':
description: Delete has been accepted
'404':
description: Check or label 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/TraceSpan'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
- in: query
name: orgID
required: true
description: Only show notification rules that belong to a specific organization ID.
schema:
type: string
- in: query
name: checkID
description: Only show notifications that belong to the specific check ID.
schema:
type: string
- in: query
name: tag
description: Only show notification rules that match a tag pair. Uses `AND` to specify multiple tags.
schema:
type: string
pattern: ^[a-zA-Z0-9_]+:[a-zA-Z0-9_]+$
example: env:prod
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 a notification rule
requestBody:
description: Notification rule 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"
'/checks/{checkID}/query':
get:
operationId: GetChecksIDQuery
tags:
- Checks
summary: Get a check query
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: checkID
schema:
type: string
required: true
description: The check ID.
responses:
'200':
description: The check query requested
content:
application/json:
schema:
$ref: "#/components/schemas/FluxResponse"
'400':
description: Invalid request
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'404':
description: Check not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
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: The notification rule ID.
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"
put:
operationId: PutNotificationRulesID
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: The notification rule ID.
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"
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/NotificationRuleUpdate"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: ruleID
schema:
type: string
required: true
description: The notification rule ID.
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: The notification rule ID.
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/{ruleID}/labels':
get:
operationId: GetNotificationRulesIDLabels
tags:
- NotificationRules
summary: List all labels for a notification rule
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: ruleID
schema:
type: string
required: true
description: The notification rule ID.
responses:
'200':
description: A list of all labels for a notification rule
content:
application/json:
schema:
$ref: "#/components/schemas/LabelsResponse"
default:
description: Unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostNotificationRuleIDLabels
tags:
- NotificationRules
summary: Add a label to a notification rule
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: ruleID
schema:
type: string
required: true
description: The notification rule ID.
requestBody:
description: Label to add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/LabelMapping"
responses:
'201':
description: The label was added to the notification rule
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: Unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/notificationRules/{ruleID}/labels/{labelID}':
delete:
operationId: DeleteNotificationRulesIDLabelsID
tags:
- NotificationRules
summary: Delete label from a notification rule
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: ruleID
schema:
type: string
required: true
description: The notification rule ID.
- in: path
name: labelID
schema:
type: string
required: true
description: The ID of the label to delete.
responses:
'204':
description: Delete has been accepted
'404':
description: Rule or label not found
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
default:
description: Unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/notificationRules/{ruleID}/query':
get:
operationId: GetNotificationRulesIDQuery
tags:
- Rules
summary: Get a notification rule query
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: ruleID
schema:
type: string
required: true
description: The notification rule ID.
responses:
'200':
description: The notification rule query requested
content:
application/json:
schema:
$ref: "#/components/schemas/FluxResponse"
'400':
description: Invalid request
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'404':
description: Notification rule 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/TraceSpan'
- $ref: '#/components/parameters/Offset'
- $ref: '#/components/parameters/Limit'
- in: query
name: orgID
required: true
description: Only show notification endpoints that belong to specific organization ID.
schema:
type: string
responses:
'200':
description: A list of notification endpoints
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 a notification endpoint
requestBody:
description: Notification endpoint to create
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationEndpoint"
responses:
'201':
description: Notification endpoint created
content:
application/json:
schema:
$ref: "#/components/schemas/NotificationEndpoint"
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: The notification endpoint ID.
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"
put:
operationId: PutNotificationEndpointsID
tags:
- NotificationEndpoints
summary: Update a notification endpoint
requestBody:
description: A new notification endpoint to replace the existing endpoint with
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: The notification endpoint ID.
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"
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/NotificationEndpointUpdate"
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: endpointID
schema:
type: string
required: true
description: The notification endpoint ID.
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: The notification endpoint ID.
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"
'/notificationEndpoints/{endpointID}/labels':
get:
operationId: GetNotificationEndpointsIDLabels
tags:
- NotificationEndpoints
summary: List all labels for a notification endpoint
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: endpointID
schema:
type: string
required: true
description: The notification endpoint ID.
responses:
'200':
description: A list of all labels for a notification endpoint
content:
application/json:
schema:
$ref: "#/components/schemas/LabelsResponse"
default:
description: Unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
post:
operationId: PostNotificationEndpointIDLabels
tags:
- NotificationEndpoints
summary: Add a label to a notification endpoint
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: endpointID
schema:
type: string
required: true
description: The notification endpoint ID.
requestBody:
description: Label to add
required: true
content:
application/json:
schema:
$ref: "#/components/schemas/LabelMapping"
responses:
'201':
description: The label was added to the notification endpoint
content:
application/json:
schema:
$ref: "#/components/schemas/LabelResponse"
default:
description: Unexpected error
content:
application/json:
schema:
$ref: "#/components/schemas/Error"
'/notificationEndpoints/{endpointID}/labels/{labelID}':
delete:
operationId: DeleteNotificationEndpointsIDLabelsID
tags:
- NotificationEndpoints
summary: Delete a label from a notification endpoint
parameters:
- $ref: '#/components/parameters/TraceSpan'
- in: path
name: endpointID
schema:
type: string
required: true
description: The notification endpoint ID.
- in: path
name: labelID
schema:
type: string
required: true
description: The ID of the label to delete.
responses:
'204':
description: Delete has been accepted
'404':
description: Endpoint or label 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 specific return formatting.
type: object
required:
- query
properties:
extern:
$ref: "#/components/schemas/File"
query:
description: Query script to execute.
type: string
type:
description: The 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: The 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/ParenExpression"
- $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"
ParenExpression:
description: Represents an expression wrapped in parenthesis
type: object
properties:
type:
$ref: "#/components/schemas/NodeType"
expression:
$ref: "#/components/schemas/Expression"
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
- notificationRules
- notificationEndpoints
- checks
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
$ref: "#/components/schemas/Link"
user:
readOnly: true
$ref: "#/components/schemas/Link"
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
type:
readOnly: true
type: string
default: user
enum:
- user
- system
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
readOnly: true
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
type:
description: The type of task, this can be used for filtering tasks on list actions.
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:
$ref: "#/components/schemas/TaskStatusType"
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]
TaskStatusType:
type: string
enum: [active, inactive]
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: array
items:
$ref: "#/components/schemas/FluxSuggestion"
FluxSuggestion:
type: object
properties:
name:
type: string
params:
type: object
additionalProperties:
type: string
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
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'
BuilderConfig:
type: object
properties:
buckets:
type: array
items:
type: string
tags:
type: array
items:
$ref: '#/components/schemas/BuilderTagsType'
functions:
type: array
items:
$ref: '#/components/schemas/BuilderFunctionsType'
aggregateWindow:
type: object
properties:
period:
type: string
BuilderTagsType:
type: object
properties:
key:
type: string
values:
type: array
items:
type: string
BuilderFunctionsType:
type: object
properties:
name:
type: string
DashboardQuery:
type: object
properties:
text:
type: string
description: The text of the Flux query.
editMode:
$ref: '#/components/schemas/QueryEditMode'
name:
type: string
builderConfig:
$ref: '#/components/schemas/BuilderConfig'
QueryEditMode:
type: string
enum: ['builder', 'advanced']
Axis:
type: object
description: The 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: string
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
enum: ['', '2', '10']
scale:
$ref: '#/components/schemas/AxisScale'
AxisScale:
description: 'Scale is the axis formatting scale. Supported: "log", "linear"'
type: string
enum: ['log', 'linear']
DashboardColor:
type: object
description: Defines an encoding of data value into color space.
required: [id, type, hex, name, value]
properties:
id:
description: The unique ID of the view color.
type: string
type:
description: Type is how the color is used.
type: string
enum:
- min
- max
- threshold
- scale
- text
- background
hex:
description: The hex number of the color
type: string
maxLength: 7
minLength: 7
name:
description: The user-facing name of the hex color.
type: string
value:
description: The data value mapped to this color.
type: number
format: float
RenamableField:
description: Describes a field that can be renamed and made visible or invisible.
type: object
properties:
internalName:
description: The calculated name of a field.
readOnly: true
type: string
displayName:
description: 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
XYViewProperties:
type: object
required:
- type
- geom
- queries
- shape
- axes
- colors
- legend
- note
- showNoteWhenEmpty
properties:
type:
type: string
enum: [xy]
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"
shape:
type: string
enum: ['chronograf-v2']
note:
type: string
showNoteWhenEmpty:
description: If true, will display note when empty
type: boolean
axes:
$ref: '#/components/schemas/Axes'
legend:
$ref: '#/components/schemas/Legend'
xColumn:
type: string
yColumn:
type: string
shadeBelow:
type: boolean
geom:
$ref: '#/components/schemas/XYGeom'
XYGeom:
type: string
enum: [line, step, stacked, bar, monotoneX]
LinePlusSingleStatProperties:
type: object
required:
- type
- queries
- shape
- axes
- colors
- legend
- note
- showNoteWhenEmpty
- prefix
- suffix
- decimalPlaces
properties:
type:
type: string
enum: [line-plus-single-stat]
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"
shape:
type: string
enum: ['chronograf-v2']
note:
type: string
showNoteWhenEmpty:
description: If true, will display note when empty
type: boolean
axes:
$ref: '#/components/schemas/Axes'
legend:
$ref: '#/components/schemas/Legend'
xColumn:
type: string
yColumn:
type: string
shadeBelow:
type: boolean
prefix:
type: string
suffix:
type: string
decimalPlaces:
$ref: '#/components/schemas/DecimalPlaces'
ScatterViewProperties:
type: object
required:
- type
- queries
- colors
- shape
- note
- showNoteWhenEmpty
- xColumn
- yColumn
- fillColumns
- symbolColumns
- xDomain
- yDomain
- xAxisLabel
- yAxisLabel
- xPrefix
- yPrefix
- xSuffix
- ySuffix
properties:
type:
type: string
enum: [scatter]
queries:
type: array
items:
$ref: "#/components/schemas/DashboardQuery"
colors:
description: Colors define color encoding of data into a visualization
type: array
items:
type: string
shape:
type: string
enum: ['chronograf-v2']
note:
type: string
showNoteWhenEmpty:
description: If true, will display note when empty
type: boolean
xColumn:
type: string
yColumn:
type: string
fillColumns:
type: array
items:
type: string
symbolColumns:
type: array
items:
type: string
xDomain:
type: array
items:
type: number
maxItems: 2
yDomain:
type: array
items:
type: number
maxItems: 2
xAxisLabel:
type: string
yAxisLabel:
type: string
xPrefix:
type: string
xSuffix:
type: string
yPrefix:
type: string
ySuffix:
type: string
HeatmapViewProperties:
type: object
required:
- type
- queries
- colors
- shape
- note
- showNoteWhenEmpty
- xColumn
- yColumn
- xDomain
- yDomain
- xAxisLabel
- yAxisLabel
- xPrefix
- yPrefix
- xSuffix
- ySuffix
- binSize
properties:
type:
type: string
enum: [heatmap]
queries:
type: array
items:
$ref: "#/components/schemas/DashboardQuery"
colors:
description: Colors define color encoding of data into a visualization
type: array
items:
type: string
shape:
type: string
enum: ['chronograf-v2']
note:
type: string
showNoteWhenEmpty:
description: If true, will display note when empty
type: boolean
xColumn:
type: string
yColumn:
type: string
xDomain:
type: array
items:
type: number
maxItems: 2
yDomain:
type: array
items:
type: number
maxItems: 2
xAxisLabel:
type: string
yAxisLabel:
type: string
xPrefix:
type: string
xSuffix:
type: string
yPrefix:
type: string
ySuffix:
type: string
binSize:
type: number
SingleStatViewProperties:
type: object
required:
- type
- queries
- colors
- shape
- note
- showNoteWhenEmpty
- prefix
- suffix
- legend
- decimalPlaces
properties:
type:
type: string
enum: [single-stat]
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"
shape:
type: string
enum: ['chronograf-v2']
note:
type: string
showNoteWhenEmpty:
description: If true, will display note when empty
type: boolean
prefix:
type: string
suffix:
type: string
legend:
$ref: '#/components/schemas/Legend'
decimalPlaces:
$ref: "#/components/schemas/DecimalPlaces"
HistogramViewProperties:
type: object
required:
- type
- queries
- colors
- shape
- note
- showNoteWhenEmpty
- xColumn
- fillColumns
- xDomain
- xAxisLabel
- position
- binCount
properties:
type:
type: string
enum: [histogram]
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"
shape:
type: string
enum: ['chronograf-v2']
note:
type: string
showNoteWhenEmpty:
description: If true, will display note when empty
type: boolean
xColumn:
type: string
fillColumns:
type: array
items:
type: string
xDomain:
type: array
items:
type: number
format: float
xAxisLabel:
type: string
position:
type: string
enum: [overlaid, stacked]
binCount:
type: integer
GaugeViewProperties:
type: object
required:
- type
- queries
- colors
- shape
- note
- showNoteWhenEmpty
- prefix
- suffix
- legend
- decimalPlaces
properties:
type:
type: string
enum: [gauge]
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"
shape:
type: string
enum: ['chronograf-v2']
note:
type: string
showNoteWhenEmpty:
description: If true, will display note when empty
type: boolean
prefix:
type: string
suffix:
type: string
legend:
$ref: '#/components/schemas/Legend'
decimalPlaces:
$ref: "#/components/schemas/DecimalPlaces"
TableViewProperties:
type: object
required:
- type
- queries
- colors
- shape
- note
- showNoteWhenEmpty
- tableOptions
- fieldOptions
- timeFormat
- decimalPlaces
properties:
type:
type: string
enum: [table]
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"
shape:
type: string
enum: ['chronograf-v2']
note:
type: string
showNoteWhenEmpty:
description: If true, will display note when empty
type: boolean
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
required:
- type
- shape
- note
properties:
type:
type: string
enum: [markdown]
shape:
type: string
enum: ['chronograf-v2']
note:
type: string
CheckViewProperties:
type: object
required:
- type
- shape
- checkID
- queries
- colors
properties:
type:
type: string
enum: [check]
shape:
type: string
enum: ['chronograf-v2']
checkID:
type: string
check:
$ref: '#/components/schemas/Check'
queries:
type: array
items:
$ref: "#/components/schemas/DashboardQuery"
colors:
description: Colors define color encoding of data into a visualization
type: array
items:
type: string
Axes:
description: The viewport for a View's visualizations
type: object
required: ['x', 'y']
properties:
x:
$ref: '#/components/schemas/Axis'
"y": # Quoted to prevent YAML parser from interpreting y as shorthand for true.
$ref: '#/components/schemas/Axis'
Legend:
description: Legend define encoding of data into a view's legend
type: object
properties:
type:
description: 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"
ViewProperties:
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/CheckViewProperties"
- $ref: "#/components/schemas/ScatterViewProperties"
- $ref: "#/components/schemas/HeatmapViewProperties"
View:
required:
- name
- properties
properties:
links:
type: object
readOnly: true
properties:
self:
type: string
id:
readOnly: true
type: string
name:
type: string
properties:
$ref: '#/components/schemas/ViewProperties'
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: The ID of the organization that owns the dashboard.
name:
type: string
description: The user-facing name of the dashboard.
description:
type: string
description: The 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: The name of the scraper target.
type:
type: string
description: The type of the metrics to be parsed.
enum: [prometheus]
url:
type: string
description: The URL of the metrics endpoint.
example: http://localhost:9090/metrics
orgID:
type: string
description: The organization ID.
bucketID:
type: string
description: The ID of the bucket to write to.
ScraperTargetResponse:
type: object
allOf:
- $ref: "#/components/schemas/ScraperTargetRequest"
- type: object
properties:
id:
type: string
readOnly: true
org:
type: string
description: The organization name.
bucket:
type: string
description: The bucket name.
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
templateID:
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: The document URL.
$ref: "#/components/schemas/Link"
required:
- id
- meta
- content
DocumentCreate:
type: object
properties:
meta:
$ref: "#/components/schemas/DocumentMeta"
content:
type: object
org:
type: string
description: The organization Name. Specify either `orgID` or `org`.
orgID:
type: string
description: The organization Name. Specify either `orgID` or `org`.
labels:
type: array
description: An array of label IDs to 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: The document URL.
$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:
$ref: "#/components/schemas/TaskStatusType"
flux:
description: The Flux script to run for this task.
type: string
description:
description: An optional description of the task.
type: string
required: [flux]
TaskUpdateRequest:
type: object
properties:
status:
$ref: "#/components/schemas/TaskStatusType"
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
description:
description: An optional description of the task.
type: string
FluxResponse:
description: Rendered flux that backs the check or notification.
properties:
flux:
type: string
CheckPatch:
type: object
properties:
name:
type: string
description:
type: string
status:
type: string
enum:
- active
- inactive
Check:
oneOf:
- $ref: "#/components/schemas/DeadmanCheck"
- $ref: "#/components/schemas/ThresholdCheck"
discriminator:
propertyName: type
mapping:
deadman: "#/components/schemas/DeadmanCheck"
threshold: "#/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
ownerID:
description: The ID of creator 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:
$ref: "#/components/schemas/DashboardQuery"
status:
$ref: "#/components/schemas/TaskStatusType"
every:
description: Check repetition interval.
type: string
offset:
description: Duration to delay after the schedule, before executing check.
type: string
tags:
description: List of tags to write to each status.
type: array
items:
type: object
properties:
key:
type: string
value:
type: string
description:
description: An optional description of the check.
type: string
statusMessageTemplate:
description: The template used to generate and write a status message.
type: string
labels:
$ref: "#/components/schemas/Labels"
links:
type: object
readOnly: true
example:
self: "/api/v2/checks/1"
labels: "/api/v2/checks/1/labels"
members: "/api/v2/checks/1/members"
owners: "/api/v2/checks/1/owners"
properties:
self:
description: URL for this check
$ref: "#/components/schemas/Link"
labels:
description: URL to retrieve labels for this check
$ref: "#/components/schemas/Link"
members:
description: URL to retrieve members for this check
$ref: "#/components/schemas/Link"
owners:
description: URL to retrieve owners for this check
$ref: "#/components/schemas/Link"
required: [name, type, orgID, query]
ThresholdCheck:
allOf:
- $ref: "#/components/schemas/CheckBase"
- type: object
properties:
type:
type: string
enum: [threshold]
thresholds:
type: array
items:
$ref: "#/components/schemas/Threshold"
Threshold:
oneOf:
- $ref: "#/components/schemas/GreaterThreshold"
- $ref: "#/components/schemas/LesserThreshold"
- $ref: "#/components/schemas/RangeThreshold"
discriminator:
propertyName: type
mapping:
greater: "#/components/schemas/GreaterThreshold"
lesser: "#/components/schemas/LesserThreshold"
range: "#/components/schemas/RangeThreshold"
DeadmanCheck:
allOf:
- $ref: "#/components/schemas/CheckBase"
- type: object
properties:
type:
type: string
enum: [deadman]
timeSince:
description: String duration before deadman triggers.
type: string
staleTime:
description: String duration for time that a series is considered stale and should not trigger deadman.
type: string
reportZero:
description: If only zero values reported since time, trigger an alert
type: boolean
level:
$ref: "#/components/schemas/CheckStatusLevel"
ThresholdBase:
properties:
level:
$ref: "#/components/schemas/CheckStatusLevel"
allValues:
description: If true, only alert if all values meet threshold.
type: boolean
GreaterThreshold:
allOf:
- $ref: "#/components/schemas/ThresholdBase"
- type: object
required: [type, value]
properties:
type:
type: string
enum: [greater]
value:
type: number
format: float
LesserThreshold:
allOf:
- $ref: "#/components/schemas/ThresholdBase"
- type: object
required: [type, value]
properties:
type:
type: string
enum: [lesser]
value:
type: number
format: float
RangeThreshold:
allOf:
- $ref: "#/components/schemas/ThresholdBase"
- type: object
required: [type, min, max, within]
properties:
type:
type: string
enum: [range]
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"]
RuleStatusLevel:
description: The state to record if check matches a criteria.
type: string
enum: ["UNKNOWN", "OK", "INFO", "CRIT", "WARN", "ANY"]
NotificationRuleUpdate:
type: object
properties:
name:
type: string
description:
type: string
status:
type: string
enum:
- active
- inactive
NotificationRule:
oneOf:
- $ref: "#/components/schemas/SlackNotificationRule"
- $ref: "#/components/schemas/SMTPNotificationRule"
- $ref: "#/components/schemas/PagerDutyNotificationRule"
- $ref: "#/components/schemas/HTTPNotificationRule"
discriminator:
propertyName: type
mapping:
slack: "#/components/schemas/SlackNotificationRule"
smtp: "#/components/schemas/SMTPNotificationRule"
pagerduty: "#/components/schemas/PagerDutyNotificationRule"
http: "#/components/schemas/HTTPNotificationRule"
NotificationRules:
properties:
notificationRules:
type: array
items:
$ref: "#/components/schemas/NotificationRule"
links:
$ref: "#/components/schemas/Links"
NotificationRuleBase:
type: object
required:
- id
- orgID
- status
- name
- tagRules
- statusRules
- endpointID
properties:
id:
readOnly: true
type: string
endpointID:
type: string
orgID:
description: The ID of the organization that owns this notification rule.
type: string
ownerID:
description: The ID of creator 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:
$ref: "#/components/schemas/TaskStatusType"
name:
description: Human-readable name describing the notification rule.
type: string
sleepUntil:
type: string
every:
description: The notification repetition interval.
type: string
offset:
description: Duration to delay after the schedule, before executing check.
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"
description:
description: An optional description of the notification rule.
type: string
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"
links:
type: object
readOnly: true
example:
self: "/api/v2/notificationRules/1"
labels: "/api/v2/notificationRules/1/labels"
members: "/api/v2/notificationRules/1/members"
owners: "/api/v2/notificationRules/1/owners"
properties:
self:
description: URL for this endpoint.
$ref: "#/components/schemas/Link"
labels:
description: URL to retrieve labels for this notification rule.
$ref: "#/components/schemas/Link"
members:
description: URL to retrieve members for this notification rule.
$ref: "#/components/schemas/Link"
owners:
description: URL to retrieve owners for this notification rule.
$ref: "#/components/schemas/Link"
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/RuleStatusLevel"
previousLevel:
$ref: "#/components/schemas/RuleStatusLevel"
count:
type: integer
period:
type: string
HTTPNotificationRuleBase:
type: object
required: [type, url]
properties:
type:
type: string
enum: [http]
url:
type: string
HTTPNotificationRule:
allOf:
- $ref: "#/components/schemas/NotificationRuleBase"
- $ref: "#/components/schemas/HTTPNotificationRuleBase"
SlackNotificationRuleBase:
type: object
required: [type, messageTemplate]
properties:
type:
type: string
enum: [slack]
channel:
type: string
messageTemplate:
type: string
SlackNotificationRule:
allOf:
- $ref: "#/components/schemas/NotificationRuleBase"
- $ref: "#/components/schemas/SlackNotificationRuleBase"
SMTPNotificationRule:
allOf:
- $ref: "#/components/schemas/NotificationRuleBase"
- $ref: "#/components/schemas/SMTPNotificationRuleBase"
SMTPNotificationRuleBase:
type: object
required: [type, subjectTemplate, to]
properties:
type:
type: string
enum: [smtp]
subjectTemplate:
type: string
bodyTemplate:
type: string
to:
type: string
PagerDutyNotificationRule:
allOf:
- $ref: "#/components/schemas/NotificationRuleBase"
- $ref: "#/components/schemas/PagerDutyNotificationRuleBase"
PagerDutyNotificationRuleBase:
type: object
required: [type, messageTemplate]
properties:
type:
type: string
enum: [pagerduty]
messageTemplate:
type: string
NotificationEndpointUpdate:
type: object
properties:
name:
type: string
description:
type: string
status:
type: string
enum:
- active
- inactive
NotificationEndpoint:
oneOf:
- $ref: "#/components/schemas/SlackNotificationEndpoint"
- $ref: "#/components/schemas/PagerDutyNotificationEndpoint"
- $ref: "#/components/schemas/HTTPNotificationEndpoint"
discriminator:
propertyName: type
mapping:
slack: "#/components/schemas/SlackNotificationEndpoint"
pagerduty: "#/components/schemas/PagerDutyNotificationEndpoint"
http: "#/components/schemas/HTTPNotificationEndpoint"
NotificationEndpoints:
properties:
notificationEndpoints:
type: array
items:
$ref: "#/components/schemas/NotificationEndpoint"
links:
$ref: "#/components/schemas/Links"
NotificationEndpointBase:
type: object
required: [type, name]
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
description:
description: An optional description of the notification endpoint.
type: string
name:
type: string
status:
description: The status of the endpoint.
default: active
type: string
enum: ["active", "inactive"]
labels:
$ref: "#/components/schemas/Labels"
links:
type: object
readOnly: true
example:
self: "/api/v2/notificationEndpoints/1"
labels: "/api/v2/notificationEndpoints/1/labels"
members: "/api/v2/notificationEndpoints/1/members"
owners: "/api/v2/notificationEndpoints/1/owners"
properties:
self:
description: URL for this endpoint.
$ref: "#/components/schemas/Link"
labels:
description: URL to retrieve labels for this endpoint.
$ref: "#/components/schemas/Link"
members:
description: URL to retrieve members for this endpoint.
$ref: "#/components/schemas/Link"
owners:
description: URL to retrieve owners for this endpoint.
$ref: "#/components/schemas/Link"
type:
$ref: "#/components/schemas/NotificationEndpointType"
SlackNotificationEndpoint:
type: object
allOf:
- $ref: "#/components/schemas/NotificationEndpointBase"
- type: object
properties:
url:
description: Specifies the URL of the Slack endpoint. Specify either `URL` or `Token`.
type: string
token:
description: Specifies the API token string. Specify either `URL` or `Token`.
type: string
PagerDutyNotificationEndpoint:
type: object
allOf:
- $ref: "#/components/schemas/NotificationEndpointBase"
- type: object
required: [routingKey]
properties:
clientURL:
type: string
routingKey:
type: string
HTTPNotificationEndpoint:
type: object
allOf:
- $ref: "#/components/schemas/NotificationEndpointBase"
- type: object
required: [url, authMethod, method]
properties:
url:
type: string
username:
type: string
password:
type: string
token:
type: string
method:
type: string
enum: ['POST', 'GET', 'PUT']
authMethod:
type: string
enum: ['none', 'basic', 'bearer']
contentTemplate:
type: string
headers:
type: object
description: Customized headers.
additionalProperties:
type: string
NotificationEndpointType:
type: string
enum: ['slack', 'pagerduty', 'http']
securitySchemes:
BasicAuth:
type: http
scheme: basic