diff --git a/api-docs/README.md b/api-docs/README.md
new file mode 100644
index 000000000..653ae6b68
--- /dev/null
+++ b/api-docs/README.md
@@ -0,0 +1,7 @@
+## Generate InfluxDB API docs
+
+- Versioned swagger files
+
+```
+npm install -g redoc-cli
+```
diff --git a/api-docs/template.hbs b/api-docs/template.hbs
new file mode 100644
index 000000000..5b8c294b8
--- /dev/null
+++ b/api-docs/template.hbs
@@ -0,0 +1,24 @@
+
+
+
+
+
+ {{title}}
+
+
+
+
+ {{#unless disableGoogleFont}}{{/unless}}
+ {{{redocHead}}}
+
+
+
+ {{{redocHTML}}}
+
+
+
diff --git a/api-docs/v2.0/swagger.yml b/api-docs/v2.0/swagger.yml
new file mode 100644
index 000000000..a74555930
--- /dev/null
+++ b/api-docs/v2.0/swagger.yml
@@ -0,0 +1,9851 @@
+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:
+ 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
+ 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 times every seconds. If set, limit cannot be empty.
+ type: integer
+ limit:
+ description: Don't notify me more than times every 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: [clientURL, 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
diff --git a/content/v2.0/reference/api/spec.html b/content/v2.0/api.html
similarity index 99%
rename from content/v2.0/reference/api/spec.html
rename to content/v2.0/api.html
index d54f88491..708c65520 100644
--- a/content/v2.0/reference/api/spec.html
+++ b/content/v2.0/api.html
@@ -1,8 +1,7 @@
---
-title: InfluxDB v2 API documentation
+title: InfluxDB v2.0 API documentation
description: >
- The InfluxDB v2 API provides a programmatic interface for interactions with InfluxDB.
- Access the InfluxDB API using the `/api/v2/` endpoint.
+ The InfluxDB API provides a programmatic interface for interactions with InfluxDB v2.0.
layout: api
menu:
v2_0_ref:
@@ -16,15 +15,17 @@ weight: 102
- ReDoc documentation
-
+ InfluxDB v2.0 API documentation
+
+
+