openapi: 3.0.0
servers:
  - url: /api/v2
info:
  description: |-
    # Authentication

    &lt;!-- ReDoc-Inject: &lt;security-definitions&gt; --&gt;
  title: Influx OSS API Service
  version: 2.0.0
  x-apisguru-categories:
    - iot
  x-logo:
    url: https://www.influxdata.com/wp-content/uploads/Favicon-blue-200x200.png
  x-origin:
    - format: openapi
      url: blob:https://docs.influxdata.com/blobId
      version: "3.0"
  x-providerName: influxdata.com
paths:
  /:
    get:
      operationId: GetRoutes
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      responses:
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Routes"
          description: All routes
      summary: List all top level routes
      tags:
        - Routes
  /authorizations:
    get:
      operationId: GetAuthorizations
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: Only show authorizations that belong to a user ID.
          in: query
          name: userID
          schema:
            type: string
        - description: Only show authorizations that belong to a user name.
          in: query
          name: user
          schema:
            type: string
        - description: Only show authorizations that belong to an organization ID.
          in: query
          name: orgID
          schema:
            type: string
        - description: Only show authorizations that belong to a organization name.
          in: query
          name: org
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Authorizations"
          description: A list of authorizations
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: List all authorizations
      tags:
        - Authorizations
    post:
      operationId: PostAuthorizations
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AuthorizationPostRequest"
        description: Authorization to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Authorization"
          description: Authorization created
        "400":
          $ref: "#/components/responses/ServerError"
          description: Invalid request
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: Create an authorization
      tags:
        - Authorizations
  "/authorizations/{authID}":
    delete:
      operationId: DeleteAuthorizationsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the authorization to delete.
          in: path
          name: authID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Authorization deleted
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: Delete an authorization
      tags:
        - Authorizations
    get:
      operationId: GetAuthorizationsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the authorization to get.
          in: path
          name: authID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Authorization"
          description: Authorization details
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: Retrieve an authorization
      tags:
        - Authorizations
    patch:
      operationId: PatchAuthorizationsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the authorization to update.
          in: path
          name: authID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AuthorizationUpdateRequest"
        description: Authorization to update
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Authorization"
          description: The active or inactie authorization
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: Update an authorization to be active or inactive
      tags:
        - Authorizations
  /buckets:
    get:
      operationId: GetBuckets
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - $ref: "#/components/parameters/Offset"
        - $ref: "#/components/parameters/Limit"
        - $ref: "#/components/parameters/After"
        - description: The name of the organization.
          in: query
          name: org
          schema:
            type: string
        - description: The organization ID.
          in: query
          name: orgID
          schema:
            type: string
        - description: Only returns buckets with a specific name.
          in: query
          name: name
          schema:
            type: string
        - description: Only returns buckets with a specific ID.
          in: query
          name: id
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Buckets"
          description: A list of buckets
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all buckets
      tags:
        - Buckets
    post:
      operationId: PostBuckets
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PostBucketRequest"
        description: Bucket to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Bucket"
          description: Bucket created
        "422":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Request body failed validation
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Create a bucket
      tags:
        - Buckets
  "/buckets/{bucketID}":
    delete:
      operationId: DeleteBucketsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the bucket to delete.
          in: path
          name: bucketID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Bucket not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a bucket
      tags:
        - Buckets
    get:
      operationId: GetBucketsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The bucket ID.
          in: path
          name: bucketID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Bucket"
          description: Bucket details
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a bucket
      tags:
        - Buckets
    patch:
      operationId: PatchBucketsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The bucket ID.
          in: path
          name: bucketID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PatchBucketRequest"
        description: Bucket update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Bucket"
          description: An updated bucket
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a bucket
      tags:
        - Buckets
  "/buckets/{bucketID}/labels":
    get:
      operationId: GetBucketsIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The bucket ID.
          in: path
          name: bucketID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelsResponse"
          description: A list of all labels for a bucket
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all labels for a bucket
      tags:
        - Buckets
    post:
      operationId: PostBucketsIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The bucket ID.
          in: path
          name: bucketID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LabelMapping"
        description: Label to add
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: The newly added label
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a label to a bucket
      tags:
        - Buckets
  "/buckets/{bucketID}/labels/{labelID}":
    delete:
      operationId: DeleteBucketsIDLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The bucket ID.
          in: path
          name: bucketID
          required: true
          schema:
            type: string
        - description: The ID of the label to delete.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Bucket not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a label from a bucket
      tags:
        - Buckets
  "/buckets/{bucketID}/members":
    get:
      operationId: GetBucketsIDMembers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The bucket ID.
          in: path
          name: bucketID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceMembers"
          description: A list of bucket members
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all users with member privileges for a bucket
      tags:
        - Buckets
    post:
      operationId: PostBucketsIDMembers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The bucket ID.
          in: path
          name: bucketID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddResourceMemberRequestBody"
        description: User to add as member
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceMember"
          description: Member added to bucket
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a member to a bucket
      tags:
        - Buckets
  "/buckets/{bucketID}/members/{userID}":
    delete:
      operationId: DeleteBucketsIDMembersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the member to remove.
          in: path
          name: userID
          required: true
          schema:
            type: string
        - description: The bucket ID.
          in: path
          name: bucketID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Member removed
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Remove a member from a bucket
      tags:
        - Buckets
  "/buckets/{bucketID}/owners":
    get:
      operationId: GetBucketsIDOwners
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The bucket ID.
          in: path
          name: bucketID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceOwners"
          description: A list of bucket owners
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all owners of a bucket
      tags:
        - Buckets
    post:
      operationId: PostBucketsIDOwners
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The bucket ID.
          in: path
          name: bucketID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddResourceMemberRequestBody"
        description: User to add as owner
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceOwner"
          description: Bucket owner added
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add an owner to a bucket
      tags:
        - Buckets
  "/buckets/{bucketID}/owners/{userID}":
    delete:
      operationId: DeleteBucketsIDOwnersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the owner to remove.
          in: path
          name: userID
          required: true
          schema:
            type: string
        - description: The bucket ID.
          in: path
          name: bucketID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Owner removed
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Remove an owner from a bucket
      tags:
        - Buckets
  /checks:
    get:
      operationId: GetChecks
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - $ref: "#/components/parameters/Offset"
        - $ref: "#/components/parameters/Limit"
        - description: Only show checks that belong to a specific organization ID.
          in: query
          name: orgID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Checks"
          description: A list of checks
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all checks
      tags:
        - Checks
    post:
      operationId: CreateCheck
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PostCheck"
        description: Check to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Check"
          description: Check created
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add new check
      tags:
        - Checks
  "/checks/{checkID}":
    delete:
      operationId: DeleteChecksID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The check ID.
          in: path
          name: checkID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: The check was not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a check
      tags:
        - Checks
    get:
      operationId: GetChecksID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The check ID.
          in: path
          name: checkID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Check"
          description: The check requested
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a check
      tags:
        - Checks
    patch:
      operationId: PatchChecksID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The check ID.
          in: path
          name: checkID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CheckPatch"
        description: Check update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Check"
          description: An updated check
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: The check was not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a check
      tags:
        - Checks
    put:
      operationId: PutChecksID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The check ID.
          in: path
          name: checkID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Check"
        description: Check update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Check"
          description: An updated check
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: The check was not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a check
      tags:
        - Checks
  "/checks/{checkID}/labels":
    get:
      operationId: GetChecksIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The check ID.
          in: path
          name: checkID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelsResponse"
          description: A list of all labels for a check
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all labels for a check
      tags:
        - Checks
    post:
      operationId: PostChecksIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The check ID.
          in: path
          name: checkID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LabelMapping"
        description: Label to add
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: The label was added to the check
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a label to a check
      tags:
        - Checks
  "/checks/{checkID}/labels/{labelID}":
    delete:
      operationId: DeleteChecksIDLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The check ID.
          in: path
          name: checkID
          required: true
          schema:
            type: string
        - description: The ID of the label to delete.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Check or label not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete label from a check
      tags:
        - Checks
  "/checks/{checkID}/query":
    get:
      operationId: GetChecksIDQuery
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The check ID.
          in: path
          name: checkID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FluxResponse"
          description: The check query requested
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Invalid request
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Check not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a check query
      tags:
        - Checks
  /dashboards:
    get:
      operationId: GetDashboards
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - $ref: "#/components/parameters/Offset"
        - $ref: "#/components/parameters/Limit"
        - $ref: "#/components/parameters/Descending"
        - description: A user identifier. Returns only dashboards where this user has the
            `owner` role.
          in: query
          name: owner
          schema:
            type: string
        - description: The column to sort by.
          in: query
          name: sortBy
          schema:
            enum:
              - ID
              - CreatedAt
              - UpdatedAt
            type: string
        - description: A list of dashboard identifiers. Returns only the listed
            dashboards. If both `id` and `owner` are specified, only `id` is
            used.
          in: query
          name: id
          schema:
            items:
              type: string
            type: array
        - description: The identifier of the organization.
          in: query
          name: orgID
          schema:
            type: string
        - description: The name of the organization.
          in: query
          name: org
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Dashboards"
          description: All dashboards
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all dashboards
      tags:
        - Dashboards
    post:
      operationId: PostDashboards
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateDashboardRequest"
        description: Dashboard to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: "#/components/schemas/Dashboard"
                  - $ref: "#/components/schemas/DashboardWithViewProperties"
          description: Added dashboard
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Create a dashboard
      tags:
        - Dashboards
  "/dashboards/{dashboardID}":
    delete:
      operationId: DeleteDashboardsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the dashboard to update.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Dashboard not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a dashboard
      tags:
        - Dashboards
    get:
      operationId: GetDashboardsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the dashboard to update.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
        - description: Includes the cell view properties in the response if set to
            `properties`
          in: query
          name: include
          required: false
          schema:
            enum:
              - properties
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: "#/components/schemas/Dashboard"
                  - $ref: "#/components/schemas/DashboardWithViewProperties"
          description: Retrieve a single dashboard
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Dashboard not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a Dashboard
      tags:
        - Dashboards
    patch:
      operationId: PatchDashboardsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the dashboard to update.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                cells:
                  $ref: "#/components/schemas/CellWithViewProperties"
                  description: optional, when provided will replace all existing cells with the
                    cells provided
                description:
                  description: optional, when provided will replace the description
                  type: string
                name:
                  description: optional, when provided will replace the name
                  type: string
              title: PatchDashboardRequest
              type: object
        description: Patching of a dashboard
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Dashboard"
          description: Updated dashboard
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Dashboard not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a dashboard
      tags:
        - Dashboards
  "/dashboards/{dashboardID}/cells":
    post:
      operationId: PostDashboardsIDCells
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the dashboard to update.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CreateCell"
        description: Cell that will be added
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Cell"
          description: Cell successfully added
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Dashboard not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Create a dashboard cell
      tags:
        - Cells
        - Dashboards
    put:
      description: Replaces all cells in a dashboard. This is used primarily to update
        the positional information of all cells.
      operationId: PutDashboardsIDCells
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the dashboard to update.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Cells"
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Dashboard"
          description: Replaced dashboard cells
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Dashboard not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Replace cells in a dashboard
      tags:
        - Cells
        - Dashboards
  "/dashboards/{dashboardID}/cells/{cellID}":
    delete:
      operationId: DeleteDashboardsIDCellsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the dashboard to delete.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
        - description: The ID of the cell to delete.
          in: path
          name: cellID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Cell successfully deleted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Cell or dashboard not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a dashboard cell
      tags:
        - Cells
        - Dashboards
    patch:
      description: Updates the non positional information related to a cell. Updates
        to a single cell's positional data could cause grid conflicts.
      operationId: PatchDashboardsIDCellsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the dashboard to update.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
        - description: The ID of the cell to update.
          in: path
          name: cellID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CellUpdate"
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Cell"
          description: Updated dashboard cell
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Cell or dashboard not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update the non-positional information related to a cell
      tags:
        - Cells
        - Dashboards
  "/dashboards/{dashboardID}/cells/{cellID}/view":
    get:
      operationId: GetDashboardsIDCellsIDView
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The dashboard ID.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
        - description: The cell ID.
          in: path
          name: cellID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/View"
          description: A dashboard cells view
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Cell or dashboard not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve the view for a cell
      tags:
        - Cells
        - Dashboards
        - Views
    patch:
      operationId: PatchDashboardsIDCellsIDView
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the dashboard to update.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
        - description: The ID of the cell to update.
          in: path
          name: cellID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/View"
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/View"
          description: Updated cell view
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Cell or dashboard not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update the view for a cell
      tags:
        - Cells
        - Dashboards
        - Views
  "/dashboards/{dashboardID}/labels":
    get:
      operationId: GetDashboardsIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The dashboard ID.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelsResponse"
          description: A list of all labels for a dashboard
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all labels for a dashboard
      tags:
        - Dashboards
    post:
      operationId: PostDashboardsIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The dashboard ID.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LabelMapping"
        description: Label to add
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: The label added to the dashboard
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a label to a dashboard
      tags:
        - Dashboards
  "/dashboards/{dashboardID}/labels/{labelID}":
    delete:
      operationId: DeleteDashboardsIDLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The dashboard ID.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
        - description: The ID of the label to delete.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Dashboard not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a label from a dashboard
      tags:
        - Dashboards
  "/dashboards/{dashboardID}/members":
    get:
      operationId: GetDashboardsIDMembers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The dashboard ID.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceMembers"
          description: A list of users who have member privileges for a dashboard
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all dashboard members
      tags:
        - Dashboards
    post:
      operationId: PostDashboardsIDMembers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The dashboard ID.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddResourceMemberRequestBody"
        description: User to add as member
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceMember"
          description: Added to dashboard members
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a member to a dashboard
      tags:
        - Dashboards
  "/dashboards/{dashboardID}/members/{userID}":
    delete:
      operationId: DeleteDashboardsIDMembersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the member to remove.
          in: path
          name: userID
          required: true
          schema:
            type: string
        - description: The dashboard ID.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Member removed
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Remove a member from a dashboard
      tags:
        - Dashboards
  "/dashboards/{dashboardID}/owners":
    get:
      operationId: GetDashboardsIDOwners
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The dashboard ID.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceOwners"
          description: A list of users who have owner privileges for a dashboard
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all dashboard owners
      tags:
        - Dashboards
    post:
      operationId: PostDashboardsIDOwners
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The dashboard ID.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddResourceMemberRequestBody"
        description: User to add as owner
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceOwner"
          description: Added to dashboard owners
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add an owner to a dashboard
      tags:
        - Dashboards
  "/dashboards/{dashboardID}/owners/{userID}":
    delete:
      operationId: DeleteDashboardsIDOwnersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the owner to remove.
          in: path
          name: userID
          required: true
          schema:
            type: string
        - description: The dashboard ID.
          in: path
          name: dashboardID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Owner removed
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Remove an owner from a dashboard
      tags:
        - Dashboards
  /dbrps:
    get:
      operationId: GetDBRPs
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: Specifies the organization ID to filter on
          in: query
          name: orgID
          required: true
          schema:
            type: string
        - description: Specifies the mapping ID to filter on
          in: query
          name: id
          schema:
            type: string
        - description: Specifies the bucket ID to filter on
          in: query
          name: bucketID
          schema:
            type: string
        - description: Specifies filtering on default
          in: query
          name: default
          schema:
            type: boolean
        - description: Specifies the database to filter on
          in: query
          name: db
          schema:
            type: string
        - description: Specifies the retention policy to filter on
          in: query
          name: rp
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DBRPs"
          description: A list of all database retention policy mappings
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: if any of the parameter passed is invalid
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all database retention policy mappings
      tags:
        - DBRPs
    post:
      operationId: PostDBRP
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DBRP"
        description: The database retention policy mapping to add
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DBRP"
          description: Database retention policy mapping created
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: if any of the IDs in the mapping is invalid
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a database retention policy mapping
      tags:
        - DBRPs
  "/dbrps/{dbrpID}":
    delete:
      operationId: DeleteDBRPID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: Specifies the organization ID of the mapping
          in: query
          name: orgID
          required: true
          schema:
            type: string
        - description: The database retention policy mapping
          in: path
          name: dbrpID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: if any of the IDs passed is invalid
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a database retention policy
      tags:
        - DBRPs
    get:
      operationId: GetDBRPsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: Specifies the organization ID of the mapping
          in: query
          name: orgID
          required: true
          schema:
            type: string
        - description: The database retention policy mapping ID
          in: path
          name: dbrpID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DBRP"
          description: The database retention policy requested
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: if any of the IDs passed is invalid
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a database retention policy mapping
      tags:
        - DBRPs
    patch:
      operationId: PatchDBRPID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: Specifies the organization ID of the mapping
          in: query
          name: orgID
          required: true
          schema:
            type: string
        - description: The database retention policy mapping.
          in: path
          name: dbrpID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DBRPUpdate"
        description: Database retention policy update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/DBRP"
          description: An updated mapping
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: if any of the IDs passed is invalid
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: The mapping was not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a database retention policy mapping
      tags:
        - DBRPs
  /delete:
    post:
      operationId: PostDelete
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: Specifies the organization to delete data from.
          in: query
          name: org
          schema:
            description: Only points from this organization are deleted.
            type: string
        - description: Specifies the bucket to delete data from.
          in: query
          name: bucket
          schema:
            description: Only points from this bucket are deleted.
            type: string
        - description: Specifies the organization ID of the resource.
          in: query
          name: orgID
          schema:
            type: string
        - description: Specifies the bucket ID to delete data from.
          in: query
          name: bucketID
          schema:
            description: Only points from this bucket ID are deleted.
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DeletePredicateRequest"
        description: Predicate delete request
        required: true
      responses:
        "204":
          description: delete has been accepted
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Invalid request.
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: no token was sent or does not have sufficient permissions.
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: the bucket or organization is not found.
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: internal server error
      summary: Delete time series data from InfluxDB
      tags:
        - Delete
  /documents/templates:
    get:
      operationId: GetDocumentsTemplates
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: Specifies the name of the organization of the template.
          in: query
          name: org
          schema:
            type: string
        - description: Specifies the organization ID of the template.
          in: query
          name: orgID
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Documents"
          description: A list of template documents
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all templates
      tags:
        - Templates
    post:
      operationId: PostDocumentsTemplates
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DocumentCreate"
        description: Template that will be created
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Document"
          description: Template created
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Create a template
      tags:
        - Templates
  "/documents/templates/{templateID}":
    delete:
      operationId: DeleteDocumentsTemplatesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The template ID.
          in: path
          name: templateID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a template
      tags:
        - Templates
    get:
      operationId: GetDocumentsTemplatesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The template ID.
          in: path
          name: templateID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Document"
          description: The template requested
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a template
      tags:
        - Templates
    put:
      operationId: PutDocumentsTemplatesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The template ID.
          in: path
          name: templateID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/DocumentUpdate"
        description: Template that will be updated
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Document"
          description: The newly updated template
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a template
      tags:
        - Templates
  "/documents/templates/{templateID}/labels":
    get:
      operationId: GetDocumentsTemplatesIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The template ID.
          in: path
          name: templateID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelsResponse"
          description: A list of all labels for a template
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all labels for a template
      tags:
        - Templates
    post:
      operationId: PostDocumentsTemplatesIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The template ID.
          in: path
          name: templateID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LabelMapping"
        description: Label to add
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: The label added to the template
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a label to a template
      tags:
        - Templates
  "/documents/templates/{templateID}/labels/{labelID}":
    delete:
      operationId: DeleteDocumentsTemplatesIDLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The template ID.
          in: path
          name: templateID
          required: true
          schema:
            type: string
        - description: The label ID.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Template not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a label from a template
      tags:
        - Templates
  /flags:
    get:
      operationId: GetFlags
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Flags"
          description: Feature flags for the currently authenticated user
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Return the feature flags for the currently authenticated user
      tags:
        - Users
  /health:
    get:
      operationId: GetHealth
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HealthCheck"
          description: The instance is healthy
        "503":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HealthCheck"
          description: The instance is unhealthy
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: Get the health of an instance
      tags:
        - Health
    servers:
      - url: ""
  /labels:
    get:
      operationId: GetLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The organization ID.
          in: query
          name: orgID
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelsResponse"
          description: A list of labels
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all labels
      tags:
        - Labels
    post:
      operationId: PostLabels
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LabelCreateRequest"
        description: Label to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: Added label
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Create a label
      tags:
        - Labels
  "/labels/{labelID}":
    delete:
      operationId: DeleteLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the label to delete.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Label not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a label
      tags:
        - Labels
    get:
      operationId: GetLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the label to update.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: A label
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a label
      tags:
        - Labels
    patch:
      operationId: PatchLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the label to update.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LabelUpdate"
        description: Label update
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: Updated label
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Label not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a label
      tags:
        - Labels
  /me:
    get:
      operationId: GetMe
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserResponse"
          description: The currently authenticated user.
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve the currently authenticated user
      tags:
        - Users
  /me/password:
    put:
      operationId: PutMePassword
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PasswordResetBody"
        description: New password
        required: true
      responses:
        "204":
          description: Password successfully updated
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unsuccessful authentication
      security:
        - BasicAuth: []
      summary: Update a password
      tags:
        - Users
  /notificationEndpoints:
    get:
      operationId: GetNotificationEndpoints
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - $ref: "#/components/parameters/Offset"
        - $ref: "#/components/parameters/Limit"
        - description: Only show notification endpoints that belong to specific
            organization ID.
          in: query
          name: orgID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/NotificationEndpoints"
          description: A list of notification endpoints
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all notification endpoints
      tags:
        - NotificationEndpoints
    post:
      operationId: CreateNotificationEndpoint
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PostNotificationEndpoint"
        description: Notification endpoint to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/NotificationEndpoint"
          description: Notification endpoint created
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a notification endpoint
      tags:
        - NotificationEndpoints
  "/notificationEndpoints/{endpointID}":
    delete:
      operationId: DeleteNotificationEndpointsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification endpoint ID.
          in: path
          name: endpointID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: The endpoint was not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a notification endpoint
      tags:
        - NotificationEndpoints
    get:
      operationId: GetNotificationEndpointsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification endpoint ID.
          in: path
          name: endpointID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/NotificationEndpoint"
          description: The notification endpoint requested
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a notification endpoint
      tags:
        - NotificationEndpoints
    patch:
      operationId: PatchNotificationEndpointsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification endpoint ID.
          in: path
          name: endpointID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/NotificationEndpointUpdate"
        description: Check update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/NotificationEndpoint"
          description: An updated notification endpoint
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: The notification endpoint was not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a notification endpoint
      tags:
        - NotificationEndpoints
    put:
      operationId: PutNotificationEndpointsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification endpoint ID.
          in: path
          name: endpointID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/NotificationEndpoint"
        description: A new notification endpoint to replace the existing endpoint with
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/NotificationEndpoint"
          description: An updated notification endpoint
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: The notification endpoint was not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a notification endpoint
      tags:
        - NotificationEndpoints
  "/notificationEndpoints/{endpointID}/labels":
    get:
      operationId: GetNotificationEndpointsIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification endpoint ID.
          in: path
          name: endpointID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelsResponse"
          description: A list of all labels for a notification endpoint
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all labels for a notification endpoint
      tags:
        - NotificationEndpoints
    post:
      operationId: PostNotificationEndpointIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification endpoint ID.
          in: path
          name: endpointID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LabelMapping"
        description: Label to add
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: The label was added to the notification endpoint
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a label to a notification endpoint
      tags:
        - NotificationEndpoints
  "/notificationEndpoints/{endpointID}/labels/{labelID}":
    delete:
      operationId: DeleteNotificationEndpointsIDLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification endpoint ID.
          in: path
          name: endpointID
          required: true
          schema:
            type: string
        - description: The ID of the label to delete.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Endpoint or label not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a label from a notification endpoint
      tags:
        - NotificationEndpoints
  /notificationRules:
    get:
      operationId: GetNotificationRules
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - $ref: "#/components/parameters/Offset"
        - $ref: "#/components/parameters/Limit"
        - description: Only show notification rules that belong to a specific organization
            ID.
          in: query
          name: orgID
          required: true
          schema:
            type: string
        - description: Only show notifications that belong to the specific check ID.
          in: query
          name: checkID
          schema:
            type: string
        - description: Only return notification rules that "would match" statuses which
            contain the tag key value pairs provided.
          in: query
          name: tag
          schema:
            example: env:prod
            pattern: ^[a-zA-Z0-9_]+:[a-zA-Z0-9_]+$
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/NotificationRules"
          description: A list of notification rules
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all notification rules
      tags:
        - NotificationRules
    post:
      operationId: CreateNotificationRule
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PostNotificationRule"
        description: Notification rule to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/NotificationRule"
          description: Notification rule created
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a notification rule
      tags:
        - NotificationRules
  "/notificationRules/{ruleID}":
    delete:
      operationId: DeleteNotificationRulesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification rule ID.
          in: path
          name: ruleID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: The check was not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a notification rule
      tags:
        - NotificationRules
    get:
      operationId: GetNotificationRulesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification rule ID.
          in: path
          name: ruleID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/NotificationRule"
          description: The notification rule requested
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a notification rule
      tags:
        - NotificationRules
    patch:
      operationId: PatchNotificationRulesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification rule ID.
          in: path
          name: ruleID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/NotificationRuleUpdate"
        description: Notification rule update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/NotificationRule"
          description: An updated notification rule
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: The notification rule was not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a notification rule
      tags:
        - NotificationRules
    put:
      operationId: PutNotificationRulesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification rule ID.
          in: path
          name: ruleID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/NotificationRule"
        description: Notification rule update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/NotificationRule"
          description: An updated notification rule
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: The notification rule was not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a notification rule
      tags:
        - NotificationRules
  "/notificationRules/{ruleID}/labels":
    get:
      operationId: GetNotificationRulesIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification rule ID.
          in: path
          name: ruleID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelsResponse"
          description: A list of all labels for a notification rule
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all labels for a notification rule
      tags:
        - NotificationRules
    post:
      operationId: PostNotificationRuleIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification rule ID.
          in: path
          name: ruleID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LabelMapping"
        description: Label to add
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: The label was added to the notification rule
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a label to a notification rule
      tags:
        - NotificationRules
  "/notificationRules/{ruleID}/labels/{labelID}":
    delete:
      operationId: DeleteNotificationRulesIDLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification rule ID.
          in: path
          name: ruleID
          required: true
          schema:
            type: string
        - description: The ID of the label to delete.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Rule or label not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete label from a notification rule
      tags:
        - NotificationRules
  "/notificationRules/{ruleID}/query":
    get:
      operationId: GetNotificationRulesIDQuery
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The notification rule ID.
          in: path
          name: ruleID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FluxResponse"
          description: The notification rule query requested
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Invalid request
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Notification rule not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a notification rule query
      tags:
        - Rules
  /orgs:
    get:
      operationId: GetOrgs
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - $ref: "#/components/parameters/Offset"
        - $ref: "#/components/parameters/Limit"
        - $ref: "#/components/parameters/Descending"
        - description: Filter organizations to a specific organization name.
          in: query
          name: org
          schema:
            type: string
        - description: Filter organizations to a specific organization ID.
          in: query
          name: orgID
          schema:
            type: string
        - description: Filter organizations to a specific user ID.
          in: query
          name: userID
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Organizations"
          description: A list of organizations
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all organizations
      tags:
        - Organizations
    post:
      operationId: PostOrgs
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PostOrganizationRequest"
        description: Organization to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Organization"
          description: Organization created
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Create an organization
      tags:
        - Organizations
  "/orgs/{orgID}":
    delete:
      operationId: DeleteOrgsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the organization to delete.
          in: path
          name: orgID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Organization not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete an organization
      tags:
        - Organizations
    get:
      operationId: GetOrgsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the organization to get.
          in: path
          name: orgID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Organization"
          description: Organization details
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve an organization
      tags:
        - Organizations
    patch:
      operationId: PatchOrgsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the organization to get.
          in: path
          name: orgID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PatchOrganizationRequest"
        description: Organization update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Organization"
          description: Organization updated
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update an organization
      tags:
        - Organizations
  "/orgs/{orgID}/members":
    get:
      operationId: GetOrgsIDMembers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The organization ID.
          in: path
          name: orgID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceMembers"
          description: A list of organization members
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Organization not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all members of an organization
      tags:
        - Organizations
    post:
      operationId: PostOrgsIDMembers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The organization ID.
          in: path
          name: orgID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddResourceMemberRequestBody"
        description: User to add as member
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceMember"
          description: Added to organization created
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a member to an organization
      tags:
        - Organizations
  "/orgs/{orgID}/members/{userID}":
    delete:
      operationId: DeleteOrgsIDMembersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the member to remove.
          in: path
          name: userID
          required: true
          schema:
            type: string
        - description: The organization ID.
          in: path
          name: orgID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Member removed
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Remove a member from an organization
      tags:
        - Organizations
  "/orgs/{orgID}/owners":
    get:
      operationId: GetOrgsIDOwners
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The organization ID.
          in: path
          name: orgID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceOwners"
          description: A list of organization owners
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Organization not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all owners of an organization
      tags:
        - Organizations
    post:
      operationId: PostOrgsIDOwners
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The organization ID.
          in: path
          name: orgID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddResourceMemberRequestBody"
        description: User to add as owner
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceOwner"
          description: Organization owner added
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add an owner to an organization
      tags:
        - Organizations
  "/orgs/{orgID}/owners/{userID}":
    delete:
      operationId: DeleteOrgsIDOwnersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the owner to remove.
          in: path
          name: userID
          required: true
          schema:
            type: string
        - description: The organization ID.
          in: path
          name: orgID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Owner removed
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Remove an owner from an organization
      tags:
        - Organizations
  "/orgs/{orgID}/secrets":
    get:
      operationId: GetOrgsIDSecrets
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The organization ID.
          in: path
          name: orgID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SecretKeysResponse"
          description: A list of all secret keys
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all secret keys for an organization
      tags:
        - Secrets
        - Organizations
    patch:
      operationId: PatchOrgsIDSecrets
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The organization ID.
          in: path
          name: orgID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Secrets"
        description: Secret key value pairs to update/add
        required: true
      responses:
        "204":
          description: Keys successfully patched
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update secrets in an organization
      tags:
        - Secrets
        - Organizations
  "/orgs/{orgID}/secrets/delete":
    post:
      operationId: PostOrgsIDSecrets
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The organization ID.
          in: path
          name: orgID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/SecretKeys"
        description: Secret key to delete
        required: true
      responses:
        "204":
          description: Keys successfully patched
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete secrets from an organization
      tags:
        - Secrets
        - Organizations
  /query:
    post:
      operationId: PostQuery
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The Accept-Encoding request HTTP header advertises which content
            encoding, usually a compression algorithm, the client is able to
            understand.
          in: header
          name: Accept-Encoding
          schema:
            default: identity
            description: Specifies that the query response in the body should be encoded
              with gzip or not encoded with identity.
            enum:
              - gzip
              - identity
            type: string
        - in: header
          name: Content-Type
          schema:
            enum:
              - application/json
              - application/vnd.flux
            type: string
        - 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.
          in: query
          name: org
          schema:
            type: string
        - description: Specifies the ID of the organization executing the query. If both
            `orgID` and `org` are specified, `org` takes precedence.
          in: query
          name: orgID
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              oneOf:
                - $ref: "#/components/schemas/Query"
                - $ref: "#/components/schemas/InfluxQLQuery"
          application/vnd.flux:
            schema:
              type: string
        description: Flux query or specification to execute
      responses:
        "200":
          content:
            application/vnd.influx.arrow:
              schema:
                format: binary
                type: string
            text/csv:
              schema:
                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
                type: string
          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:
                default: identity
                description: Specifies that the response in the body is encoded with gzip or not
                  encoded with identity.
                enum:
                  - gzip
                  - identity
                type: string
            Trace-Id:
              description: The Trace-Id header reports the request's trace ID, if one was
                generated.
              schema:
                description: Specifies the request's trace ID.
                type: string
        "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:
                format: int32
                type: integer
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Error processing query
      summary: Query InfluxDB
      tags:
        - Query
  /query/analyze:
    post:
      operationId: PostQueryAnalyze
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - in: header
          name: Content-Type
          schema:
            enum:
              - application/json
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Query"
        description: Flux or InfluxQL query to analyze
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AnalyzeQueryResponse"
          description: Query analyze results. Errors will be empty if the query is valid.
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          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
      summary: Analyze an InfluxQL or Flux query
      tags:
        - Query
  /query/ast:
    post:
      description: Analyzes flux query and generates a query specification.
      operationId: PostQueryAst
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - in: header
          name: Content-Type
          schema:
            enum:
              - application/json
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LanguageRequest"
        description: Analyzed Flux query to generate abstract syntax tree.
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ASTResponse"
          description: Abstract syntax tree of the flux query.
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Any response other than 200 is an internal server error
      summary: Generate an Abstract Syntax Tree (AST) from a query
      tags:
        - Query
  /query/suggestions:
    get:
      operationId: GetQuerySuggestions
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FluxSuggestions"
          description: Suggestions for next functions in call chain
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Any response other than 200 is an internal server error
      summary: Retrieve query suggestions
      tags:
        - Query
  "/query/suggestions/{name}":
    get:
      operationId: GetQuerySuggestionsName
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The name of the branching suggestion.
          in: path
          name: name
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/FluxSuggestion"
          description: Suggestions for next functions in call chain
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Any response other than 200 is an internal server error
      summary: Retrieve query suggestions for a branching suggestion
      tags:
        - Query
  /ready:
    get:
      operationId: GetReady
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Ready"
          description: The instance is ready
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: Get the readiness of an instance at startup
      tags:
        - Ready
    servers:
      - url: ""
  /scrapers:
    get:
      operationId: GetScrapers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: Specifies the name of the scraper target.
          in: query
          name: name
          schema:
            type: string
        - description: List of scraper target IDs to return. If both `id` and `owner` are
            specified, only `id` is used.
          in: query
          name: id
          schema:
            items:
              type: string
            type: array
        - description: Specifies the organization ID of the scraper target.
          in: query
          name: orgID
          schema:
            type: string
        - description: Specifies the organization name of the scraper target.
          in: query
          name: org
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ScraperTargetResponses"
          description: All scraper targets
      summary: List all scraper targets
      tags:
        - Scraper Targets
    post:
      operationId: PostScrapers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ScraperTargetRequest"
        description: Scraper target to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ScraperTargetResponse"
          description: Scraper target created
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Internal server error
      summary: Create a scraper target
      tags:
        - Scraper Targets
  "/scrapers/{scraperTargetID}":
    delete:
      operationId: DeleteScrapersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The identifier of the scraper target.
          in: path
          name: scraperTargetID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Scraper target deleted
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Internal server error
      summary: Delete a scraper target
      tags:
        - Scraper Targets
    get:
      operationId: GetScrapersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The identifier of the scraper target.
          in: path
          name: scraperTargetID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ScraperTargetResponse"
          description: The scraper target
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Internal server error
      summary: Retrieve a scraper target
      tags:
        - Scraper Targets
    patch:
      operationId: PatchScrapersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The identifier of the scraper target.
          in: path
          name: scraperTargetID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ScraperTargetRequest"
        description: Scraper target update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ScraperTargetResponse"
          description: Scraper target updated
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Internal server error
      summary: Update a scraper target
      tags:
        - Scraper Targets
  "/scrapers/{scraperTargetID}/labels":
    get:
      operationId: GetScrapersIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The scraper target ID.
          in: path
          name: scraperTargetID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelsResponse"
          description: A list of labels for a scraper target.
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all labels for a scraper target
      tags:
        - Scraper Targets
    post:
      operationId: PostScrapersIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The scraper target ID.
          in: path
          name: scraperTargetID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LabelMapping"
        description: Label to add
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: The newly added label
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a label to a scraper target
      tags:
        - Scraper Targets
  "/scrapers/{scraperTargetID}/labels/{labelID}":
    delete:
      operationId: DeleteScrapersIDLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The scraper target ID.
          in: path
          name: scraperTargetID
          required: true
          schema:
            type: string
        - description: The label ID.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Scraper target not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a label from a scraper target
      tags:
        - Scraper Targets
  "/scrapers/{scraperTargetID}/members":
    get:
      operationId: GetScrapersIDMembers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The scraper target ID.
          in: path
          name: scraperTargetID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceMembers"
          description: A list of scraper target members
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all users with member privileges for a scraper target
      tags:
        - Scraper Targets
    post:
      operationId: PostScrapersIDMembers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The scraper target ID.
          in: path
          name: scraperTargetID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddResourceMemberRequestBody"
        description: User to add as member
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceMember"
          description: Member added to scraper targets
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a member to a scraper target
      tags:
        - Scraper Targets
  "/scrapers/{scraperTargetID}/members/{userID}":
    delete:
      operationId: DeleteScrapersIDMembersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of member to remove.
          in: path
          name: userID
          required: true
          schema:
            type: string
        - description: The scraper target ID.
          in: path
          name: scraperTargetID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Member removed
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Remove a member from a scraper target
      tags:
        - Scraper Targets
  "/scrapers/{scraperTargetID}/owners":
    get:
      operationId: GetScrapersIDOwners
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The scraper target ID.
          in: path
          name: scraperTargetID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceOwners"
          description: A list of scraper target owners
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all owners of a scraper target
      tags:
        - Scraper Targets
    post:
      operationId: PostScrapersIDOwners
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The scraper target ID.
          in: path
          name: scraperTargetID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddResourceMemberRequestBody"
        description: User to add as owner
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceOwner"
          description: Scraper target owner added
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add an owner to a scraper target
      tags:
        - Scraper Targets
  "/scrapers/{scraperTargetID}/owners/{userID}":
    delete:
      operationId: DeleteScrapersIDOwnersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of owner to remove.
          in: path
          name: userID
          required: true
          schema:
            type: string
        - description: The scraper target ID.
          in: path
          name: scraperTargetID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Owner removed
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Remove an owner from a scraper target
      tags:
        - Scraper Targets
  /setup:
    get:
      description: Returns `true` if no default user, organization, or bucket has been
        created.
      operationId: GetSetup
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/IsOnboarding"
          description: allowed true or false
      summary: Check if database has default user, org, bucket
      tags:
        - Setup
    post:
      description: Post an onboarding request to set up initial user, org and bucket.
      operationId: PostSetup
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/OnboardingRequest"
        description: Source to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/OnboardingResponse"
          description: Created default user, bucket, org
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: Set up initial user, org and bucket
      tags:
        - Setup
  /signin:
    post:
      operationId: PostSignin
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      responses:
        "204":
          description: Successfully authenticated
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unauthorized access
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: user account is disabled
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unsuccessful authentication
      security:
        - BasicAuth: []
      summary: Exchange basic auth credentials for session
  /signout:
    post:
      operationId: PostSignout
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      responses:
        "204":
          description: Session successfully expired
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unauthorized access
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unsuccessful session expiry
      summary: Expire the current session
  /sources:
    get:
      operationId: GetSources
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The name of the organization.
          in: query
          name: org
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Sources"
          description: A list of sources
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all sources
      tags:
        - Sources
    post:
      operationId: PostSources
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Source"
        description: Source to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Source"
          description: Created Source
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Create a source
      tags:
        - Sources
  "/sources/{sourceID}":
    delete:
      operationId: DeleteSourcesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The source ID.
          in: path
          name: sourceID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: View not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a source
      tags:
        - Sources
    get:
      operationId: GetSourcesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The source ID.
          in: path
          name: sourceID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Source"
          description: A source
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Source not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a source
      tags:
        - Sources
    patch:
      operationId: PatchSourcesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The source ID.
          in: path
          name: sourceID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Source"
        description: Source update
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Source"
          description: Created Source
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Source not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a Source
      tags:
        - Sources
  "/sources/{sourceID}/buckets":
    get:
      operationId: GetSourcesIDBuckets
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The source ID.
          in: path
          name: sourceID
          required: true
          schema:
            type: string
        - description: The name of the organization.
          in: query
          name: org
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Buckets"
          description: A source
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Source not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Get buckets in a source
      tags:
        - Sources
        - Buckets
  "/sources/{sourceID}/health":
    get:
      operationId: GetSourcesIDHealth
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The source ID.
          in: path
          name: sourceID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HealthCheck"
          description: The source is healthy
        "503":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/HealthCheck"
          description: The source is not healthy
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Get the health of a source
      tags:
        - Sources
  /stacks:
    get:
      operationId: ListStacks
      parameters:
        - description: The organization id of the stacks
          in: query
          name: orgID
          required: true
          schema:
            type: string
        - description: A collection of names to filter the list by.
          in: query
          name: name
          schema:
            type: string
        - description: A collection of stackIDs to filter the list by.
          in: query
          name: stackID
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                properties:
                  stacks:
                    items:
                      $ref: "#/components/schemas/Stack"
                    type: array
                type: object
          description: Influx stacks found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all installed InfluxDB templates
      tags:
        - InfluxDB Templates
    post:
      operationId: CreateStack
      requestBody:
        content:
          application/json:
            schema:
              properties:
                description:
                  type: string
                name:
                  type: string
                orgID:
                  type: string
                urls:
                  items:
                    type: string
                  type: array
              title: PostStackRequest
              type: object
        description: Stack to create.
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Stack"
          description: InfluxDB Stack created
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Create a new stack
      tags:
        - InfluxDB Templates
  "/stacks/{stack_id}":
    delete:
      operationId: DeleteStack
      parameters:
        - description: Theidentifier of the stack.
          in: path
          name: stack_id
          required: true
          schema:
            type: string
        - description: The identifier of the organization.
          in: query
          name: orgID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: The stack and its associated resources are deleted
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a stack and associated resources
      tags:
        - InfluxDB Templates
    get:
      operationId: ReadStack
      parameters:
        - description: Theidentifier of the stack.
          in: path
          name: stack_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Stack"
          description: The InfluxDB stack
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a stack
      tags:
        - InfluxDB Templates
    patch:
      operationId: UpdateStack
      parameters:
        - description: Theidentifier of the stack.
          in: path
          name: stack_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              properties:
                additionalResources:
                  items:
                    properties:
                      kind:
                        type: string
                      resourceID:
                        type: string
                      templateMetaName:
                        type: string
                    required:
                      - kind
                      - resourceID
                    type: object
                  type: array
                description:
                  nullable: true
                  type: string
                name:
                  nullable: true
                  type: string
                templateURLs:
                  items:
                    type: string
                  nullable: true
                  type: array
              title: PatchStackRequest
              type: object
        description: Influx stack to update.
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Stack"
          description: Influx stack updated
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update an InfluxDB Stack
      tags:
        - InfluxDB Templates
  "/stacks/{stack_id}/uninstall":
    post:
      operationId: UninstallStack
      parameters:
        - description: The stack id
          in: path
          name: stack_id
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Stack"
          description: Influx stack uninstalled
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Uninstall an InfluxDB Stack
      tags:
        - InfluxDB Templates
  /tasks:
    get:
      operationId: GetTasks
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: Returns task with a specific name.
          in: query
          name: name
          schema:
            type: string
        - description: Return tasks after a specified ID.
          in: query
          name: after
          schema:
            type: string
        - description: Filter tasks to a specific user ID.
          in: query
          name: user
          schema:
            type: string
        - description: Filter tasks to a specific organization name.
          in: query
          name: org
          schema:
            type: string
        - description: Filter tasks to a specific organization ID.
          in: query
          name: orgID
          schema:
            type: string
        - description: Filter tasks by a status--"inactive" or "active".
          in: query
          name: status
          schema:
            enum:
              - active
              - inactive
            type: string
        - description: The number of tasks to return
          in: query
          name: limit
          schema:
            default: 100
            maximum: 500
            minimum: 1
            type: integer
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Tasks"
          description: A list of tasks
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all tasks
      tags:
        - Tasks
    post:
      operationId: PostTasks
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TaskCreateRequest"
        description: Task to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Task"
          description: Task created
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Create a new task
      tags:
        - Tasks
  "/tasks/{taskID}":
    delete:
      description: Deletes a task and all associated records
      operationId: DeleteTasksID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the task to delete.
          in: path
          name: taskID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Task deleted
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a task
      tags:
        - Tasks
    get:
      operationId: GetTasksID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Task"
          description: Task details
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a task
      tags:
        - Tasks
    patch:
      description: Update a task. This will cancel all queued runs.
      operationId: PatchTasksID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TaskUpdateRequest"
        description: Task update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Task"
          description: Task updated
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a task
      tags:
        - Tasks
  "/tasks/{taskID}/labels":
    get:
      operationId: GetTasksIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelsResponse"
          description: A list of all labels for a task
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all labels for a task
      tags:
        - Tasks
    post:
      operationId: PostTasksIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LabelMapping"
        description: Label to add
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: A list of all labels for a task
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a label to a task
      tags:
        - Tasks
  "/tasks/{taskID}/labels/{labelID}":
    delete:
      operationId: DeleteTasksIDLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
        - description: The label ID.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Task not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a label from a task
      tags:
        - Tasks
  "/tasks/{taskID}/logs":
    get:
      operationId: GetTasksIDLogs
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Logs"
          description: All logs for a task
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve all logs for a task
      tags:
        - Tasks
  "/tasks/{taskID}/members":
    get:
      operationId: GetTasksIDMembers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceMembers"
          description: A list of users who have member privileges for a task
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all task members
      tags:
        - Tasks
    post:
      operationId: PostTasksIDMembers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddResourceMemberRequestBody"
        description: User to add as member
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceMember"
          description: Added to task members
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a member to a task
      tags:
        - Tasks
  "/tasks/{taskID}/members/{userID}":
    delete:
      operationId: DeleteTasksIDMembersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the member to remove.
          in: path
          name: userID
          required: true
          schema:
            type: string
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Member removed
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Remove a member from a task
      tags:
        - Tasks
  "/tasks/{taskID}/owners":
    get:
      operationId: GetTasksIDOwners
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceOwners"
          description: A list of users who have owner privileges for a task
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all owners of a task
      tags:
        - Tasks
    post:
      operationId: PostTasksIDOwners
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddResourceMemberRequestBody"
        description: User to add as owner
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceOwner"
          description: Added to task owners
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add an owner to a task
      tags:
        - Tasks
  "/tasks/{taskID}/owners/{userID}":
    delete:
      operationId: DeleteTasksIDOwnersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the owner to remove.
          in: path
          name: userID
          required: true
          schema:
            type: string
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Owner removed
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Remove an owner from a task
      tags:
        - Tasks
  "/tasks/{taskID}/runs":
    get:
      operationId: GetTasksIDRuns
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the task to get runs for.
          in: path
          name: taskID
          required: true
          schema:
            type: string
        - description: Returns runs after a specific ID.
          in: query
          name: after
          schema:
            type: string
        - description: The number of runs to return
          in: query
          name: limit
          schema:
            default: 100
            maximum: 500
            minimum: 1
            type: integer
        - description: Filter runs to those scheduled after this time, RFC3339
          in: query
          name: afterTime
          schema:
            format: date-time
            type: string
        - description: Filter runs to those scheduled before this time, RFC3339
          in: query
          name: beforeTime
          schema:
            format: date-time
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Runs"
          description: A list of task runs
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List runs for a task
      tags:
        - Tasks
    post:
      operationId: PostTasksIDRuns
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - in: path
          name: taskID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RunManually"
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Run"
          description: Run scheduled to start
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Manually start a task run, overriding the current schedule
      tags:
        - Tasks
  "/tasks/{taskID}/runs/{runID}":
    delete:
      operationId: DeleteTasksIDRunsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
        - description: The run ID.
          in: path
          name: runID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Cancel a running task
      tags:
        - Tasks
    get:
      operationId: GetTasksIDRunsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
        - description: The run ID.
          in: path
          name: runID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Run"
          description: The run record
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a single run for a task
      tags:
        - Tasks
  "/tasks/{taskID}/runs/{runID}/logs":
    get:
      operationId: GetTasksIDRunsIDLogs
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: ID of task to get logs for.
          in: path
          name: taskID
          required: true
          schema:
            type: string
        - description: ID of run to get logs for.
          in: path
          name: runID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Logs"
          description: All logs for a run
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve all logs for a run
      tags:
        - Tasks
  "/tasks/{taskID}/runs/{runID}/retry":
    post:
      operationId: PostTasksIDRunsIDRetry
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The task ID.
          in: path
          name: taskID
          required: true
          schema:
            type: string
        - description: The run ID.
          in: path
          name: runID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json; charset=utf-8:
            schema:
              type: object
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Run"
          description: Run that has been queued
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retry a task run
      tags:
        - Tasks
  /telegraf/plugins:
    get:
      operationId: GetTelegrafPlugins
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The type of plugin desired.
          in: query
          name: type
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TelegrafPlugins"
          description: A list of Telegraf plugins.
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all Telegraf plugins
      tags:
        - Telegraf Plugins
  /telegrafs:
    get:
      operationId: GetTelegrafs
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The organization ID the Telegraf config belongs to.
          in: query
          name: orgID
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Telegrafs"
          description: A list of Telegraf configurations
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all Telegraf configurations
      tags:
        - Telegrafs
    post:
      operationId: PostTelegrafs
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TelegrafRequest"
        description: Telegraf configuration to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Telegraf"
          description: Telegraf configuration created
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Create a Telegraf configuration
      tags:
        - Telegrafs
  "/telegrafs/{telegrafID}":
    delete:
      operationId: DeleteTelegrafsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The Telegraf configuration ID.
          in: path
          name: telegrafID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a Telegraf configuration
      tags:
        - Telegrafs
    get:
      operationId: GetTelegrafsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The Telegraf configuration ID.
          in: path
          name: telegrafID
          required: true
          schema:
            type: string
        - in: header
          name: Accept
          required: false
          schema:
            default: application/toml
            enum:
              - application/toml
              - application/json
              - application/octet-stream
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Telegraf"
            application/octet-stream:
              example: |-
                [agent]
                interval = "10s"
              schema:
                type: string
            application/toml:
              example: |-
                [agent]
                interval = "10s"
              schema:
                type: string
          description: Telegraf configuration details
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Retrieve a Telegraf configuration
      tags:
        - Telegrafs
    put:
      operationId: PutTelegrafsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The Telegraf config ID.
          in: path
          name: telegrafID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TelegrafRequest"
        description: Telegraf configuration update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Telegraf"
          description: An updated Telegraf configurations
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Update a Telegraf configuration
      tags:
        - Telegrafs
  "/telegrafs/{telegrafID}/labels":
    get:
      operationId: GetTelegrafsIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The Telegraf config ID.
          in: path
          name: telegrafID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelsResponse"
          description: A list of all labels for a Telegraf config
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all labels for a Telegraf config
      tags:
        - Telegrafs
    post:
      operationId: PostTelegrafsIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The Telegraf config ID.
          in: path
          name: telegrafID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LabelMapping"
        description: Label to add
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: The label added to the Telegraf config
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a label to a Telegraf config
      tags:
        - Telegrafs
  "/telegrafs/{telegrafID}/labels/{labelID}":
    delete:
      operationId: DeleteTelegrafsIDLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The Telegraf config ID.
          in: path
          name: telegrafID
          required: true
          schema:
            type: string
        - description: The label ID.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Telegraf config not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a label from a Telegraf config
      tags:
        - Telegrafs
  "/telegrafs/{telegrafID}/members":
    get:
      operationId: GetTelegrafsIDMembers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The Telegraf config ID.
          in: path
          name: telegrafID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceMembers"
          description: A list of Telegraf config members
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all users with member privileges for a Telegraf config
      tags:
        - Telegrafs
    post:
      operationId: PostTelegrafsIDMembers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The Telegraf config ID.
          in: path
          name: telegrafID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddResourceMemberRequestBody"
        description: User to add as member
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceMember"
          description: Member added to Telegraf config
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a member to a Telegraf config
      tags:
        - Telegrafs
  "/telegrafs/{telegrafID}/members/{userID}":
    delete:
      operationId: DeleteTelegrafsIDMembersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the member to remove.
          in: path
          name: userID
          required: true
          schema:
            type: string
        - description: The Telegraf config ID.
          in: path
          name: telegrafID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Member removed
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Remove a member from a Telegraf config
      tags:
        - Telegrafs
  "/telegrafs/{telegrafID}/owners":
    get:
      operationId: GetTelegrafsIDOwners
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The Telegraf configuration ID.
          in: path
          name: telegrafID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceOwners"
          description: Returns Telegraf configuration owners as a ResourceOwners list
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all owners of a Telegraf configuration
      tags:
        - Telegrafs
    post:
      operationId: PostTelegrafsIDOwners
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The Telegraf configuration ID.
          in: path
          name: telegrafID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AddResourceMemberRequestBody"
        description: User to add as owner
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ResourceOwner"
          description: Telegraf configuration owner was added. Returns a ResourceOwner
            that references the User.
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add an owner to a Telegraf configuration
      tags:
        - Telegrafs
  "/telegrafs/{telegrafID}/owners/{userID}":
    delete:
      operationId: DeleteTelegrafsIDOwnersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the owner to remove.
          in: path
          name: userID
          required: true
          schema:
            type: string
        - description: The Telegraf config ID.
          in: path
          name: telegrafID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Owner removed
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Remove an owner from a Telegraf config
      tags:
        - Telegrafs
  /templates/apply:
    post:
      operationId: ApplyTemplate
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TemplateApply"
          application/x-jsonnet:
            schema:
              $ref: "#/components/schemas/TemplateApply"
          text/yml:
            schema:
              $ref: "#/components/schemas/TemplateApply"
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TemplateSummary"
          description: >
            Influx package dry-run successful, no new resources created. The
            provided diff and summary will not have IDs for resources that do
            not exist at the time of the dry run.
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/TemplateSummary"
          description: >
            Influx package applied successfully. Newly created resources
            created available in summary. The diff compares the state of the
            world before the package is applied with the changes the application
            will impose. This corresponds to `"dryRun": true`
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Apply or dry-run an InfluxDB Template
      tags:
        - InfluxDB Templates
  /templates/export:
    post:
      operationId: ExportTemplate
      requestBody:
        content:
          application/json:
            schema:
              oneOf:
                - $ref: "#/components/schemas/TemplateExportByID"
                - $ref: "#/components/schemas/TemplateExportByName"
        description: Export resources as an InfluxDB template.
        required: false
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Template"
            application/x-yaml:
              schema:
                $ref: "#/components/schemas/Template"
          description: InfluxDB template created
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Export a new Influx Template
      tags:
        - InfluxDB Templates
  /users:
    get:
      operationId: GetUsers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - $ref: "#/components/parameters/Offset"
        - $ref: "#/components/parameters/Limit"
        - $ref: "#/components/parameters/After"
        - in: query
          name: name
          schema:
            type: string
        - in: query
          name: id
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Users"
          description: A list of users
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: List all users
      tags:
        - Users
    post:
      operationId: PostUsers
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/User"
        description: User to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserResponse"
          description: User created
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: Create a user
      tags:
        - Users
  "/users/{userID}":
    delete:
      operationId: DeleteUsersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the user to delete.
          in: path
          name: userID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: User deleted
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: Delete a user
      tags:
        - Users
    get:
      operationId: GetUsersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The user ID.
          in: path
          name: userID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserResponse"
          description: User details
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: Retrieve a user
      tags:
        - Users
    patch:
      operationId: PatchUsersID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The ID of the user to update.
          in: path
          name: userID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/User"
        description: User update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserResponse"
          description: User updated
        default:
          $ref: "#/components/responses/ServerError"
          description: Unexpected error
      summary: Update a user
      tags:
        - Users
  "/users/{userID}/password":
    post:
      operationId: PostUsersIDPassword
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The user ID.
          in: path
          name: userID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PasswordResetBody"
        description: New password
        required: true
      responses:
        "204":
          description: Password successfully updated
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unsuccessful authentication
      security:
        - BasicAuth: []
      summary: Update a password
      tags:
        - Users
  /variables:
    get:
      operationId: GetVariables
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The name of the organization.
          in: query
          name: org
          schema:
            type: string
        - description: The organization ID.
          in: query
          name: orgID
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Variables"
          description: A list of variables for an organization
        "400":
          $ref: "#/components/responses/ServerError"
          description: Invalid request
        default:
          $ref: "#/components/responses/ServerError"
          description: Internal server error
      summary: List all variables
      tags:
        - Variables
    post:
      operationId: PostVariables
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Variable"
        description: Variable to create
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Variable"
          description: Variable created
        default:
          $ref: "#/components/responses/ServerError"
          description: Internal server error
      summary: Create a variable
      tags:
        - Variables
  "/variables/{variableID}":
    delete:
      operationId: DeleteVariablesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The variable ID.
          in: path
          name: variableID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Variable deleted
        default:
          $ref: "#/components/responses/ServerError"
          description: Internal server error
      summary: Delete a variable
      tags:
        - Variables
    get:
      operationId: GetVariablesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The variable ID.
          in: path
          name: variableID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Variable"
          description: Variable found
        "404":
          $ref: "#/components/responses/ServerError"
          description: Variable not found
        default:
          $ref: "#/components/responses/ServerError"
          description: Internal server error
      summary: Retrieve a variable
      tags:
        - Variables
    patch:
      operationId: PatchVariablesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The variable ID.
          in: path
          name: variableID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Variable"
        description: Variable update to apply
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Variable"
          description: Variable updated
        default:
          $ref: "#/components/responses/ServerError"
          description: Internal server error
      summary: Update a variable
      tags:
        - Variables
    put:
      operationId: PutVariablesID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The variable ID.
          in: path
          name: variableID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/Variable"
        description: Variable to replace
        required: true
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Variable"
          description: Variable updated
        default:
          $ref: "#/components/responses/ServerError"
          description: Internal server error
      summary: Replace a variable
      tags:
        - Variables
  "/variables/{variableID}/labels":
    get:
      operationId: GetVariablesIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The variable ID.
          in: path
          name: variableID
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelsResponse"
          description: A list of all labels for a variable
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: List all labels for a variable
      tags:
        - Variables
    post:
      operationId: PostVariablesIDLabels
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The variable ID.
          in: path
          name: variableID
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/LabelMapping"
        description: Label to add
        required: true
      responses:
        "201":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LabelResponse"
          description: The newly added label
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Add a label to a variable
      tags:
        - Variables
  "/variables/{variableID}/labels/{labelID}":
    delete:
      operationId: DeleteVariablesIDLabelsID
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: The variable ID.
          in: path
          name: variableID
          required: true
          schema:
            type: string
        - description: The label ID to delete.
          in: path
          name: labelID
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Delete has been accepted
        "404":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Variable not found
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Unexpected error
      summary: Delete a label from a variable
      tags:
        - Variables
  /write:
    post:
      operationId: PostWrite
      parameters:
        - $ref: "#/components/parameters/TraceSpan"
        - description: When present, its value indicates to the database that compression
            is applied to the line-protocol body.
          in: header
          name: Content-Encoding
          schema:
            default: identity
            description: Specifies that the line protocol in the body is encoded with gzip
              or not encoded with identity.
            enum:
              - gzip
              - identity
            type: string
        - description: Content-Type is used to indicate the format of the data sent to the
            server.
          in: header
          name: Content-Type
          schema:
            default: text/plain; charset=utf-8
            description: Text/plain specifies the text line protocol; charset is assumed to
              be utf-8.
            enum:
              - text/plain
              - text/plain; charset=utf-8
              - application/vnd.influx.arrow
            type: string
        - 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.
          in: header
          name: Content-Length
          schema:
            description: The length in decimal number of octets.
            type: integer
        - description: Specifies the return content format.
          in: header
          name: Accept
          schema:
            default: application/json
            description: The return format for errors.
            enum:
              - application/json
            type: string
        - description: Specifies the destination organization for writes. Takes either the
            ID or Name interchangeably. If both `orgID` and `org` are specified,
            `org` takes precedence.
          in: query
          name: org
          required: true
          schema:
            description: All points within batch are written to this organization.
            type: string
        - description: Specifies the ID of the destination organization for writes. If
            both `orgID` and `org` are specified, `org` takes precedence.
          in: query
          name: orgID
          schema:
            type: string
        - description: The destination bucket for writes.
          in: query
          name: bucket
          required: true
          schema:
            description: All points within batch are written to this bucket.
            type: string
        - description: The precision for the unix timestamps within the body line-protocol.
          in: query
          name: precision
          schema:
            $ref: "#/components/schemas/WritePrecision"
      requestBody:
        content:
          text/plain:
            schema:
              format: byte
              type: string
        description: Line protocol body
        required: true
      responses:
        "204":
          description: Write data is correctly formatted and accepted for writing to the
            bucket.
        "400":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LineProtocolError"
          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.
        "401":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Token does not have sufficient permissions to write to this
            organization and bucket or the organization and bucket do not exist.
        "403":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: No token was sent and they are required.
        "413":
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/LineProtocolLengthError"
          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.
        "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:
                format: int32
                type: integer
        "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:
                format: int32
                type: integer
        default:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Error"
          description: Internal server error
      summary: Write time series data into InfluxDB
      tags:
        - Write
components:
  parameters:
    After:
      description: >
        The last resource ID from which to seek from (but not including).
        This is to be used instead of `offset`.
      in: query
      name: after
      required: false
      schema:
        type: string
    Descending:
      in: query
      name: descending
      required: false
      schema:
        default: false
        type: boolean
    Limit:
      in: query
      name: limit
      required: false
      schema:
        default: 20
        maximum: 100
        minimum: 1
        type: integer
    Offset:
      in: query
      name: offset
      required: false
      schema:
        minimum: 0
        type: integer
    SortBy:
      in: query
      name: sortBy
      required: false
      schema:
        type: string
    TraceSpan:
      description: OpenTracing span context
      example:
        baggage:
          key: value
        span_id: "1"
        trace_id: "1"
      in: header
      name: Zap-Trace-Span
      required: false
      schema:
        type: string
  responses:
    ServerError:
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/Error"
      description: Non 2XX error response from server.
  schemas:
    ASTResponse:
      description: Contains the AST for the supplied Flux query
      properties:
        ast:
          $ref: "#/components/schemas/Package"
      type: object
    AddResourceMemberRequestBody:
      properties:
        id:
          type: string
        name:
          type: string
      required:
        - id
      type: object
    AnalyzeQueryResponse:
      properties:
        errors:
          items:
            properties:
              character:
                type: integer
              column:
                type: integer
              line:
                type: integer
              message:
                type: string
            type: object
          type: array
      type: object
    ArrayExpression:
      description: Used to create and directly specify the elements of an array object
      properties:
        elements:
          description: Elements of the array
          items:
            $ref: "#/components/schemas/Expression"
          type: array
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    Authorization:
      allOf:
        - $ref: "#/components/schemas/AuthorizationUpdateRequest"
        - properties:
            createdAt:
              format: date-time
              readOnly: true
              type: string
            id:
              readOnly: true
              type: string
            links:
              example:
                self: /api/v2/authorizations/1
                user: /api/v2/users/12
              properties:
                self:
                  $ref: "#/components/schemas/Link"
                  readOnly: true
                user:
                  $ref: "#/components/schemas/Link"
                  readOnly: true
              readOnly: true
              type: object
            org:
              description: Name of the org token is scoped to.
              readOnly: true
              type: string
            orgID:
              description: ID of org that authorization is scoped to.
              type: string
            permissions:
              description: List of permissions for an auth.  An auth must have at least one
                Permission.
              items:
                $ref: "#/components/schemas/Permission"
              minItems: 1
              type: array
            token:
              description: Passed via the Authorization Header and Token Authentication type.
              readOnly: true
              type: string
            updatedAt:
              format: date-time
              readOnly: true
              type: string
            user:
              description: Name of user that created and owns the token.
              readOnly: true
              type: string
            userID:
              description: ID of user that created and owns the token.
              readOnly: true
              type: string
          type: object
      required:
        - orgID
        - permissions
    AuthorizationPostRequest:
      allOf:
        - $ref: "#/components/schemas/AuthorizationUpdateRequest"
        - properties:
            orgID:
              description: ID of org that authorization is scoped to.
              type: string
            permissions:
              description: List of permissions for an auth.  An auth must have at least one
                Permission.
              items:
                $ref: "#/components/schemas/Permission"
              minItems: 1
              type: array
            userID:
              description: ID of user that authorization is scoped to.
              type: string
          type: object
      required:
        - orgID
        - permissions
    AuthorizationUpdateRequest:
      properties:
        description:
          description: A description of the token.
          type: string
        status:
          default: active
          description: If inactive the token is inactive and requests using the token will
            be rejected.
          enum:
            - active
            - inactive
          type: string
    Authorizations:
      properties:
        authorizations:
          items:
            $ref: "#/components/schemas/Authorization"
          type: array
        links:
          $ref: "#/components/schemas/Links"
          readOnly: true
      type: object
    Axes:
      description: The viewport for a View's visualizations
      properties:
        x:
          $ref: "#/components/schemas/Axis"
        y:
          $ref: "#/components/schemas/Axis"
      required:
        - x
        - y
      type: object
    Axis:
      description: The description of a particular axis for a visualization.
      properties:
        base:
          description: Base represents the radix for formatting axis values.
          enum:
            - ""
            - "2"
            - "10"
          type: string
        bounds:
          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
          maxItems: 2
          minItems: 0
          type: array
        label:
          description: Label is a description of this Axis
          type: string
        prefix:
          description: Prefix represents a label prefix for formatting axis values.
          type: string
        scale:
          $ref: "#/components/schemas/AxisScale"
        suffix:
          description: Suffix represents a label suffix for formatting axis values.
          type: string
      type: object
    AxisScale:
      description: 'Scale is the axis formatting scale. Supported: "log", "linear"'
      enum:
        - log
        - linear
      type: string
    BadStatement:
      description: A placeholder for statements for which no correct statement nodes
        can be created
      properties:
        text:
          description: Raw source text
          type: string
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    BandViewProperties:
      properties:
        axes:
          $ref: "#/components/schemas/Axes"
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            $ref: "#/components/schemas/DashboardColor"
          type: array
        generateXAxisTicks:
          items:
            type: string
          type: array
        generateYAxisTicks:
          items:
            type: string
          type: array
        geom:
          $ref: "#/components/schemas/XYGeom"
        hoverDimension:
          enum:
            - auto
            - x
            - y
            - xy
          type: string
        legendColorizeRows:
          type: boolean
        legendHide:
          type: boolean
        legendOpacity:
          format: float
          type: number
        legendOrientationThreshold:
          type: integer
        lowerColumn:
          type: string
        mainColumn:
          type: string
        note:
          type: string
        queries:
          items:
            $ref: "#/components/schemas/DashboardQuery"
          type: array
        shape:
          enum:
            - chronograf-v2
          type: string
        showNoteWhenEmpty:
          description: If true, will display note when empty
          type: boolean
        staticLegend:
          $ref: "#/components/schemas/StaticLegend"
        timeFormat:
          type: string
        type:
          enum:
            - band
          type: string
        upperColumn:
          type: string
        xColumn:
          type: string
        xTickStart:
          format: float
          type: number
        xTickStep:
          format: float
          type: number
        xTotalTicks:
          type: integer
        yColumn:
          type: string
        yTickStart:
          format: float
          type: number
        yTickStep:
          format: float
          type: number
        yTotalTicks:
          type: integer
      required:
        - type
        - geom
        - queries
        - shape
        - axes
        - colors
        - note
        - showNoteWhenEmpty
      type: object
    BinaryExpression:
      description: uses binary operators to act on two operands in an expression
      properties:
        left:
          $ref: "#/components/schemas/Expression"
        operator:
          type: string
        right:
          $ref: "#/components/schemas/Expression"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    Block:
      description: A set of statements
      properties:
        body:
          description: Block body
          items:
            $ref: "#/components/schemas/Statement"
          type: array
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    BooleanLiteral:
      description: Represents boolean values
      properties:
        type:
          $ref: "#/components/schemas/NodeType"
        value:
          type: boolean
      type: object
    Bucket:
      properties:
        createdAt:
          format: date-time
          readOnly: true
          type: string
        description:
          type: string
        id:
          readOnly: true
          type: string
        labels:
          $ref: "#/components/schemas/Labels"
        links:
          example:
            labels: /api/v2/buckets/1/labels
            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&amp;bucket=1
          properties:
            labels:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve labels for this bucket
            members:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve members that can read this bucket
            org:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve parent organization for this bucket
            owners:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve owners that can read and write to this bucket.
            self:
              $ref: "#/components/schemas/Link"
              description: URL for this bucket
            write:
              $ref: "#/components/schemas/Link"
              description: URL to write line protocol for this bucket
          readOnly: true
          type: object
        name:
          type: string
        orgID:
          type: string
        retentionRules:
          $ref: "#/components/schemas/RetentionRules"
        rp:
          type: string
        schemaType:
          $ref: "#/components/schemas/SchemaType"
          default: implicit
        type:
          default: user
          enum:
            - user
            - system
          readOnly: true
          type: string
        updatedAt:
          format: date-time
          readOnly: true
          type: string
      required:
        - name
        - retentionRules
    Buckets:
      properties:
        buckets:
          items:
            $ref: "#/components/schemas/Bucket"
          type: array
        links:
          $ref: "#/components/schemas/Links"
          readOnly: true
      type: object
    BuilderAggregateFunctionType:
      enum:
        - filter
        - group
      type: string
    BuilderConfig:
      properties:
        aggregateWindow:
          properties:
            fillValues:
              type: boolean
            period:
              type: string
          type: object
        buckets:
          items:
            type: string
          type: array
        functions:
          items:
            $ref: "#/components/schemas/BuilderFunctionsType"
          type: array
        tags:
          items:
            $ref: "#/components/schemas/BuilderTagsType"
          type: array
      type: object
    BuilderFunctionsType:
      properties:
        name:
          type: string
      type: object
    BuilderTagsType:
      properties:
        aggregateFunctionType:
          $ref: "#/components/schemas/BuilderAggregateFunctionType"
        key:
          type: string
        values:
          items:
            type: string
          type: array
      type: object
    BuiltinStatement:
      description: Declares a builtin identifier and its type
      properties:
        id:
          $ref: "#/components/schemas/Identifier"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    CallExpression:
      description: Represents a function call
      properties:
        arguments:
          description: Function arguments
          items:
            $ref: "#/components/schemas/Expression"
          type: array
        callee:
          $ref: "#/components/schemas/Expression"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    Cell:
      properties:
        h:
          format: int32
          type: integer
        id:
          type: string
        links:
          properties:
            self:
              type: string
            view:
              type: string
          type: object
        viewID:
          description: The reference to a view from the views API.
          type: string
        w:
          format: int32
          type: integer
        x:
          format: int32
          type: integer
        y:
          format: int32
          type: integer
      type: object
    CellUpdate:
      properties:
        h:
          format: int32
          type: integer
        w:
          format: int32
          type: integer
        x:
          format: int32
          type: integer
        y:
          format: int32
          type: integer
      type: object
    CellWithViewProperties:
      allOf:
        - $ref: "#/components/schemas/Cell"
        - properties:
            name:
              type: string
            properties:
              $ref: "#/components/schemas/ViewProperties"
          type: object
      type: object
    Cells:
      items:
        $ref: "#/components/schemas/Cell"
      type: array
    CellsWithViewProperties:
      items:
        $ref: "#/components/schemas/CellWithViewProperties"
      type: array
    Check:
      allOf:
        - $ref: "#/components/schemas/CheckDiscriminator"
    CheckBase:
      properties:
        createdAt:
          format: date-time
          readOnly: true
          type: string
        description:
          description: An optional description of the check.
          type: string
        id:
          readOnly: true
          type: string
        labels:
          $ref: "#/components/schemas/Labels"
        lastRunError:
          readOnly: true
          type: string
        lastRunStatus:
          enum:
            - failed
            - success
            - canceled
          readOnly: true
          type: string
        latestCompleted:
          description: Timestamp of latest scheduled, completed run, RFC3339.
          format: date-time
          readOnly: true
          type: string
        links:
          example:
            labels: /api/v2/checks/1/labels
            members: /api/v2/checks/1/members
            owners: /api/v2/checks/1/owners
            query: /api/v2/checks/1/query
            self: /api/v2/checks/1
          properties:
            labels:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve labels for this check
            members:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve members for this check
            owners:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve owners for this check
            query:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve flux script for this check
            self:
              $ref: "#/components/schemas/Link"
              description: URL for this check
          readOnly: true
          type: object
        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.
          readOnly: true
          type: string
        query:
          $ref: "#/components/schemas/DashboardQuery"
        status:
          $ref: "#/components/schemas/TaskStatusType"
        taskID:
          description: The ID of the task associated with this check.
          type: string
        updatedAt:
          format: date-time
          readOnly: true
          type: string
      required:
        - name
        - orgID
        - query
    CheckDiscriminator:
      discriminator:
        mapping:
          custom: "#/components/schemas/CustomCheck"
          deadman: "#/components/schemas/DeadmanCheck"
          threshold: "#/components/schemas/ThresholdCheck"
        propertyName: type
      oneOf:
        - $ref: "#/components/schemas/DeadmanCheck"
        - $ref: "#/components/schemas/ThresholdCheck"
        - $ref: "#/components/schemas/CustomCheck"
    CheckPatch:
      properties:
        description:
          type: string
        name:
          type: string
        status:
          enum:
            - active
            - inactive
          type: string
      type: object
    CheckStatusLevel:
      description: The state to record if check matches a criteria.
      enum:
        - UNKNOWN
        - OK
        - INFO
        - CRIT
        - WARN
      type: string
    CheckViewProperties:
      properties:
        check:
          $ref: "#/components/schemas/Check"
        checkID:
          type: string
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            $ref: "#/components/schemas/DashboardColor"
          type: array
        legendColorizeRows:
          type: boolean
        legendHide:
          type: boolean
        legendOpacity:
          format: float
          type: number
        legendOrientationThreshold:
          type: integer
        queries:
          items:
            $ref: "#/components/schemas/DashboardQuery"
          type: array
        shape:
          enum:
            - chronograf-v2
          type: string
        type:
          enum:
            - check
          type: string
      required:
        - type
        - shape
        - checkID
        - queries
        - colors
      type: object
    Checks:
      properties:
        checks:
          items:
            $ref: "#/components/schemas/Check"
          type: array
        links:
          $ref: "#/components/schemas/Links"
    ConditionalExpression:
      description: Selects one of two expressions, `Alternate` or `Consequent`,
        depending on a third boolean expression, `Test`
      properties:
        alternate:
          $ref: "#/components/schemas/Expression"
        consequent:
          $ref: "#/components/schemas/Expression"
        test:
          $ref: "#/components/schemas/Expression"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    ConstantVariableProperties:
      properties:
        type:
          enum:
            - constant
          type: string
        values:
          items:
            type: string
          type: array
    CreateCell:
      properties:
        h:
          format: int32
          type: integer
        name:
          type: string
        usingView:
          description: Makes a copy of the provided view.
          type: string
        w:
          format: int32
          type: integer
        x:
          format: int32
          type: integer
        y:
          format: int32
          type: integer
      type: object
    CreateDashboardRequest:
      properties:
        description:
          description: The user-facing description of the dashboard.
          type: string
        name:
          description: The user-facing name of the dashboard.
          type: string
        orgID:
          description: The ID of the organization that owns the dashboard.
          type: string
      required:
        - orgID
        - name
    CustomCheck:
      allOf:
        - $ref: "#/components/schemas/CheckBase"
        - properties:
            type:
              enum:
                - custom
              type: string
          required:
            - type
          type: object
    DBRP:
      oneOf:
        - required:
            - orgID
            - bucketID
            - database
            - retention_policy
        - required:
            - org
            - bucketID
            - database
            - retention_policy
      properties:
        bucketID:
          description: the bucket ID used as target for the translation.
          type: string
        database:
          description: InfluxDB v1 database
          type: string
        default:
          description: Specify if this mapping represents the default retention policy for
            the database specificed.
          type: boolean
        id:
          description: the mapping identifier
          readOnly: true
          type: string
        links:
          $ref: "#/components/schemas/Links"
        org:
          description: the organization that owns this mapping.
          type: string
        orgID:
          description: the organization ID that owns this mapping.
          type: string
        retention_policy:
          description: InfluxDB v1 retention policy
          type: string
      type: object
    DBRPUpdate:
      properties:
        database:
          description: InfluxDB v1 database
          type: string
        default:
          type: boolean
        links:
          $ref: "#/components/schemas/Links"
        retention_policy:
          description: InfluxDB v1 retention policy
          type: string
    DBRPs:
      properties:
        content:
          items:
            $ref: "#/components/schemas/DBRP"
          type: array
    Dashboard:
      allOf:
        - $ref: "#/components/schemas/CreateDashboardRequest"
        - properties:
            cells:
              $ref: "#/components/schemas/Cells"
            id:
              readOnly: true
              type: string
            labels:
              $ref: "#/components/schemas/Labels"
            links:
              example:
                cells: /api/v2/dashboards/1/cells
                labels: /api/v2/dashboards/1/labels
                members: /api/v2/dashboards/1/members
                org: /api/v2/labels/1
                owners: /api/v2/dashboards/1/owners
                self: /api/v2/dashboards/1
              properties:
                cells:
                  $ref: "#/components/schemas/Link"
                labels:
                  $ref: "#/components/schemas/Link"
                members:
                  $ref: "#/components/schemas/Link"
                org:
                  $ref: "#/components/schemas/Link"
                owners:
                  $ref: "#/components/schemas/Link"
                self:
                  $ref: "#/components/schemas/Link"
              type: object
            meta:
              properties:
                createdAt:
                  format: date-time
                  type: string
                updatedAt:
                  format: date-time
                  type: string
              type: object
          type: object
      type: object
    DashboardColor:
      description: Defines an encoding of data value into color space.
      properties:
        hex:
          description: The hex number of the color
          maxLength: 7
          minLength: 7
          type: string
        id:
          description: The unique ID of the view color.
          type: string
        name:
          description: The user-facing name of the hex color.
          type: string
        type:
          description: Type is how the color is used.
          enum:
            - min
            - max
            - threshold
            - scale
            - text
            - background
          type: string
        value:
          description: The data value mapped to this color.
          format: float
          type: number
      required:
        - id
        - type
        - hex
        - name
        - value
      type: object
    DashboardQuery:
      properties:
        builderConfig:
          $ref: "#/components/schemas/BuilderConfig"
        editMode:
          $ref: "#/components/schemas/QueryEditMode"
        name:
          type: string
        text:
          description: The text of the Flux query.
          type: string
      type: object
    DashboardWithViewProperties:
      allOf:
        - $ref: "#/components/schemas/CreateDashboardRequest"
        - properties:
            cells:
              $ref: "#/components/schemas/CellsWithViewProperties"
            id:
              readOnly: true
              type: string
            labels:
              $ref: "#/components/schemas/Labels"
            links:
              example:
                cells: /api/v2/dashboards/1/cells
                labels: /api/v2/dashboards/1/labels
                members: /api/v2/dashboards/1/members
                org: /api/v2/labels/1
                owners: /api/v2/dashboards/1/owners
                self: /api/v2/dashboards/1
              properties:
                cells:
                  $ref: "#/components/schemas/Link"
                labels:
                  $ref: "#/components/schemas/Link"
                members:
                  $ref: "#/components/schemas/Link"
                org:
                  $ref: "#/components/schemas/Link"
                owners:
                  $ref: "#/components/schemas/Link"
                self:
                  $ref: "#/components/schemas/Link"
              type: object
            meta:
              properties:
                createdAt:
                  format: date-time
                  type: string
                updatedAt:
                  format: date-time
                  type: string
              type: object
          type: object
      type: object
    Dashboards:
      properties:
        dashboards:
          items:
            $ref: "#/components/schemas/Dashboard"
          type: array
        links:
          $ref: "#/components/schemas/Links"
      type: object
    DateTimeLiteral:
      description: Represents an instant in time with nanosecond precision using the
        syntax of golang's RFC3339 Nanosecond variant
      properties:
        type:
          $ref: "#/components/schemas/NodeType"
        value:
          format: date-time
          type: string
      type: object
    DeadmanCheck:
      allOf:
        - $ref: "#/components/schemas/CheckBase"
        - properties:
            every:
              description: Check repetition interval.
              type: string
            level:
              $ref: "#/components/schemas/CheckStatusLevel"
            offset:
              description: Duration to delay after the schedule, before executing check.
              type: string
            reportZero:
              description: If only zero values reported since time, trigger an alert
              type: boolean
            staleTime:
              description: String duration for time that a series is considered stale and
                should not trigger deadman.
              type: string
            statusMessageTemplate:
              description: The template used to generate and write a status message.
              type: string
            tags:
              description: List of tags to write to each status.
              items:
                properties:
                  key:
                    type: string
                  value:
                    type: string
                type: object
              type: array
            timeSince:
              description: String duration before deadman triggers.
              type: string
            type:
              enum:
                - deadman
              type: string
          required:
            - type
          type: object
    DecimalPlaces:
      description: Indicates whether decimal places should be enforced, and how many
        digits it should show.
      properties:
        digits:
          description: The number of digits after decimal to display
          format: int32
          type: integer
        isEnforced:
          description: Indicates whether decimal point setting should be enforced
          type: boolean
      type: object
    DeletePredicateRequest:
      description: The delete predicate request.
      properties:
        predicate:
          description: InfluxQL-like delete statement
          example: tag1="value1" and (tag2="value2" and tag3!="value3")
          type: string
        start:
          description: RFC3339Nano
          format: date-time
          type: string
        stop:
          description: RFC3339Nano
          format: date-time
          type: string
      required:
        - start
        - stop
      type: object
    Dialect:
      description: Dialect are options to change the default CSV output format;
        https://www.w3.org/TR/2015/REC-tabular-metadata-20151217/#dialect-descriptions
      properties:
        annotations:
          description: https://www.w3.org/TR/2015/REC-tabular-data-model-20151217/#columns
          items:
            enum:
              - group
              - datatype
              - default
            type: string
          type: array
          uniqueItems: true
        commentPrefix:
          default: "#"
          description: Character prefixed to comment strings
          maxLength: 1
          minLength: 0
          type: string
        dateTimeFormat:
          default: RFC3339
          description: Format of timestamps
          enum:
            - RFC3339
            - RFC3339Nano
          type: string
        delimiter:
          default: ","
          description: Separator between cells; the default is ,
          maxLength: 1
          minLength: 1
          type: string
        header:
          default: true
          description: If true, the results will contain a header row
          type: boolean
      type: object
    DictExpression:
      description: Used to create and directly specify the elements of a dictionary
      properties:
        elements:
          description: Elements of the dictionary
          items:
            $ref: "#/components/schemas/DictItem"
          type: array
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    DictItem:
      description: A key/value pair in a dictionary
      properties:
        key:
          $ref: "#/components/schemas/Expression"
        type:
          $ref: "#/components/schemas/NodeType"
        val:
          $ref: "#/components/schemas/Expression"
      type: object
    Document:
      properties:
        content:
          type: object
        id:
          readOnly: true
          type: string
        labels:
          $ref: "#/components/schemas/Labels"
        links:
          example:
            self: /api/v2/documents/templates/1
          properties:
            self:
              $ref: "#/components/schemas/Link"
              description: The document URL.
          readOnly: true
          type: object
        meta:
          $ref: "#/components/schemas/DocumentMeta"
      required:
        - id
        - meta
        - content
      type: object
    DocumentCreate:
      properties:
        content:
          type: object
        labels:
          description: An array of label IDs to be added as labels to the document.
          items:
            type: string
          type: array
        meta:
          $ref: "#/components/schemas/DocumentMeta"
        org:
          description: The organization Name. Specify either `orgID` or `org`.
          type: string
        orgID:
          description: The organization Name. Specify either `orgID` or `org`.
          type: string
      required:
        - meta
        - content
      type: object
    DocumentListEntry:
      properties:
        id:
          readOnly: true
          type: string
        labels:
          $ref: "#/components/schemas/Labels"
        links:
          example:
            self: /api/v2/documents/templates/1
          properties:
            self:
              $ref: "#/components/schemas/Link"
              description: The document URL.
          readOnly: true
          type: object
        meta:
          $ref: "#/components/schemas/DocumentMeta"
      required:
        - id
        - meta
      type: object
    DocumentMeta:
      properties:
        createdAt:
          format: date-time
          readOnly: true
          type: string
        description:
          type: string
        name:
          type: string
        templateID:
          type: string
        type:
          type: string
        updatedAt:
          format: date-time
          readOnly: true
          type: string
        version:
          type: string
      required:
        - name
        - version
      type: object
    DocumentUpdate:
      properties:
        content:
          type: object
        meta:
          $ref: "#/components/schemas/DocumentMeta"
      type: object
    Documents:
      properties:
        documents:
          items:
            $ref: "#/components/schemas/DocumentListEntry"
          type: array
      type: object
    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.
      properties:
        magnitude:
          type: integer
        type:
          $ref: "#/components/schemas/NodeType"
        unit:
          type: string
      type: object
    DurationLiteral:
      description: Represents the elapsed time between two instants as an int64
        nanosecond count with syntax of golang's time.Duration
      properties:
        type:
          $ref: "#/components/schemas/NodeType"
        values:
          description: Duration values
          items:
            $ref: "#/components/schemas/Duration"
          type: array
      type: object
    Error:
      properties:
        code:
          description: code is the machine-readable error code.
          enum:
            - internal error
            - not found
            - conflict
            - invalid
            - unprocessable entity
            - empty value
            - unavailable
            - forbidden
            - too many requests
            - unauthorized
            - method not allowed
            - request too large
            - unsupported media type
          readOnly: true
          type: string
        err:
          description: err is a stack of errors that occurred during processing of the
            request. Useful for debugging.
          readOnly: true
          type: string
        message:
          description: message is a human-readable message.
          readOnly: true
          type: string
        op:
          description: op describes the logical code operation during error. Useful for
            debugging.
          readOnly: true
          type: string
      required:
        - code
        - message
    Expression:
      oneOf:
        - $ref: "#/components/schemas/ArrayExpression"
        - $ref: "#/components/schemas/DictExpression"
        - $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"
    ExpressionStatement:
      description: May consist of an expression that does not return a value and is
        executed solely for its side-effects
      properties:
        expression:
          $ref: "#/components/schemas/Expression"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    Field:
      properties:
        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
          items:
            $ref: "#/components/schemas/Field"
          type: array
        type:
          description: "`type` describes the field type. `func` is a function. `field` is
            a field reference."
          enum:
            - func
            - field
            - integer
            - number
            - regex
            - wildcard
          type: string
        value:
          description: value is the value of the field.  Meaning of the value is implied
            by the `type` key
          type: string
      type: object
    File:
      description: Represents a source from a single file
      properties:
        body:
          description: List of Flux statements
          items:
            $ref: "#/components/schemas/Statement"
          type: array
        imports:
          description: A list of package imports
          items:
            $ref: "#/components/schemas/ImportDeclaration"
          type: array
        name:
          description: The name of the file.
          type: string
        package:
          $ref: "#/components/schemas/PackageClause"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    Flags:
      additionalProperties: true
      type: object
    FloatLiteral:
      description: Represents floating point numbers according to the double
        representations defined by the IEEE-754-1985
      properties:
        type:
          $ref: "#/components/schemas/NodeType"
        value:
          type: number
      type: object
    FluxResponse:
      description: Rendered flux that backs the check or notification.
      properties:
        flux:
          type: string
    FluxSuggestion:
      properties:
        name:
          type: string
        params:
          additionalProperties:
            type: string
          type: object
      type: object
    FluxSuggestions:
      properties:
        funcs:
          items:
            $ref: "#/components/schemas/FluxSuggestion"
          type: array
      type: object
    FunctionExpression:
      description: Function expression
      properties:
        body:
          $ref: "#/components/schemas/Node"
        params:
          description: Function parameters
          items:
            $ref: "#/components/schemas/Property"
          type: array
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    GaugeViewProperties:
      properties:
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            $ref: "#/components/schemas/DashboardColor"
          type: array
        decimalPlaces:
          $ref: "#/components/schemas/DecimalPlaces"
        note:
          type: string
        prefix:
          type: string
        queries:
          items:
            $ref: "#/components/schemas/DashboardQuery"
          type: array
        shape:
          enum:
            - chronograf-v2
          type: string
        showNoteWhenEmpty:
          description: If true, will display note when empty
          type: boolean
        suffix:
          type: string
        tickPrefix:
          type: string
        tickSuffix:
          type: string
        type:
          enum:
            - gauge
          type: string
      required:
        - type
        - queries
        - colors
        - shape
        - note
        - showNoteWhenEmpty
        - prefix
        - tickPrefix
        - suffix
        - tickSuffix
        - decimalPlaces
      type: object
    GeoCircleViewLayer:
      allOf:
        - $ref: "#/components/schemas/GeoViewLayerProperties"
        - properties:
            colorDimension:
              $ref: "#/components/schemas/Axis"
            colorField:
              description: Circle color field
              type: string
            colors:
              description: Colors define color encoding of data into a visualization
              items:
                $ref: "#/components/schemas/DashboardColor"
              type: array
            interpolateColors:
              description: Interpolate circle color based on displayed value
              type: boolean
            radius:
              description: Maximum radius size in pixels
              type: integer
            radiusDimension:
              $ref: "#/components/schemas/Axis"
            radiusField:
              description: Radius field
              type: string
          required:
            - radiusField
            - radiusDimension
            - colorField
            - colorDimension
            - colors
          type: object
    GeoHeatMapViewLayer:
      allOf:
        - $ref: "#/components/schemas/GeoViewLayerProperties"
        - properties:
            blur:
              description: Blur for heatmap points
              type: integer
            colors:
              description: Colors define color encoding of data into a visualization
              items:
                $ref: "#/components/schemas/DashboardColor"
              type: array
            intensityDimension:
              $ref: "#/components/schemas/Axis"
            intensityField:
              description: Intensity field
              type: string
            radius:
              description: Radius size in pixels
              type: integer
          required:
            - intensityField
            - intensityDimension
            - radius
            - blur
            - colors
          type: object
    GeoPointMapViewLayer:
      allOf:
        - $ref: "#/components/schemas/GeoViewLayerProperties"
        - properties:
            colorDimension:
              $ref: "#/components/schemas/Axis"
            colorField:
              description: Marker color field
              type: string
            colors:
              description: Colors define color encoding of data into a visualization
              items:
                $ref: "#/components/schemas/DashboardColor"
              type: array
            isClustered:
              description: Cluster close markers together
              type: boolean
          required:
            - colorField
            - colorDimension
            - colors
          type: object
    GeoTrackMapViewLayer:
      allOf:
        - $ref: "#/components/schemas/GeoViewLayerProperties"
        - required:
            - trackWidth
            - speed
            - randomColors
            - trackPointVisualization
          type: object
      properties:
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            $ref: "#/components/schemas/DashboardColor"
          type: array
        randomColors:
          description: Assign different colors to different tracks
          type: boolean
        speed:
          description: Speed of the track animation
          type: integer
        trackWidth:
          description: Width of the track
          type: integer
    GeoViewLayer:
      oneOf:
        - $ref: "#/components/schemas/GeoCircleViewLayer"
        - $ref: "#/components/schemas/GeoHeatMapViewLayer"
        - $ref: "#/components/schemas/GeoPointMapViewLayer"
        - $ref: "#/components/schemas/GeoTrackMapViewLayer"
      type: object
    GeoViewLayerProperties:
      properties:
        type:
          enum:
            - heatmap
            - circleMap
            - pointMap
            - trackMap
          type: string
      required:
        - type
      type: object
    GeoViewProperties:
      properties:
        allowPanAndZoom:
          default: true
          description: If true, map zoom and pan controls are enabled on the dashboard view
          type: boolean
        center:
          description: Coordinates of the center of the map
          properties:
            lat:
              description: Latitude of the center of the map
              format: double
              type: number
            lon:
              description: Longitude of the center of the map
              format: double
              type: number
          required:
            - lat
            - lon
          type: object
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            $ref: "#/components/schemas/DashboardColor"
          type: array
        detectCoordinateFields:
          default: true
          description: If true, search results get automatically regroupped so that
            lon,lat and value are treated as columns
          type: boolean
        layers:
          description: List of individual layers shown in the map
          items:
            $ref: "#/components/schemas/GeoViewLayer"
          type: array
        mapStyle:
          description: Define map type - regular, satellite etc.
          type: string
        note:
          type: string
        queries:
          items:
            $ref: "#/components/schemas/DashboardQuery"
          type: array
        shape:
          enum:
            - chronograf-v2
          type: string
        showNoteWhenEmpty:
          description: If true, will display note when empty
          type: boolean
        type:
          enum:
            - geo
          type: string
        zoom:
          description: Zoom level used for initial display of the map
          format: double
          maximum: 28
          minimum: 1
          type: number
      required:
        - type
        - shape
        - queries
        - note
        - showNoteWhenEmpty
        - center
        - zoom
        - allowPanAndZoom
        - detectCoordinateFields
        - layers
      type: object
    GreaterThreshold:
      allOf:
        - $ref: "#/components/schemas/ThresholdBase"
        - properties:
            type:
              enum:
                - greater
              type: string
            value:
              format: float
              type: number
          required:
            - type
            - value
          type: object
    HTTPNotificationEndpoint:
      allOf:
        - $ref: "#/components/schemas/NotificationEndpointBase"
        - properties:
            authMethod:
              enum:
                - none
                - basic
                - bearer
              type: string
            contentTemplate:
              type: string
            headers:
              additionalProperties:
                type: string
              description: Customized headers.
              type: object
            method:
              enum:
                - POST
                - GET
                - PUT
              type: string
            password:
              type: string
            token:
              type: string
            url:
              type: string
            username:
              type: string
          required:
            - url
            - authMethod
            - method
          type: object
      type: object
    HTTPNotificationRule:
      allOf:
        - $ref: "#/components/schemas/NotificationRuleBase"
        - $ref: "#/components/schemas/HTTPNotificationRuleBase"
    HTTPNotificationRuleBase:
      properties:
        type:
          enum:
            - http
          type: string
        url:
          type: string
      required:
        - type
      type: object
    HealthCheck:
      properties:
        checks:
          items:
            $ref: "#/components/schemas/HealthCheck"
          type: array
        commit:
          type: string
        message:
          type: string
        name:
          type: string
        status:
          enum:
            - pass
            - fail
          type: string
        version:
          type: string
      required:
        - name
        - status
      type: object
    HeatmapViewProperties:
      properties:
        binSize:
          type: number
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            type: string
          type: array
        generateXAxisTicks:
          items:
            type: string
          type: array
        generateYAxisTicks:
          items:
            type: string
          type: array
        legendColorizeRows:
          type: boolean
        legendHide:
          type: boolean
        legendOpacity:
          format: float
          type: number
        legendOrientationThreshold:
          type: integer
        note:
          type: string
        queries:
          items:
            $ref: "#/components/schemas/DashboardQuery"
          type: array
        shape:
          enum:
            - chronograf-v2
          type: string
        showNoteWhenEmpty:
          description: If true, will display note when empty
          type: boolean
        timeFormat:
          type: string
        type:
          enum:
            - heatmap
          type: string
        xAxisLabel:
          type: string
        xColumn:
          type: string
        xDomain:
          items:
            type: number
          maxItems: 2
          type: array
        xPrefix:
          type: string
        xSuffix:
          type: string
        xTickStart:
          format: float
          type: number
        xTickStep:
          format: float
          type: number
        xTotalTicks:
          type: integer
        yAxisLabel:
          type: string
        yColumn:
          type: string
        yDomain:
          items:
            type: number
          maxItems: 2
          type: array
        yPrefix:
          type: string
        ySuffix:
          type: string
        yTickStart:
          format: float
          type: number
        yTickStep:
          format: float
          type: number
        yTotalTicks:
          type: integer
      required:
        - type
        - queries
        - colors
        - shape
        - note
        - showNoteWhenEmpty
        - xColumn
        - yColumn
        - xDomain
        - yDomain
        - xAxisLabel
        - yAxisLabel
        - xPrefix
        - yPrefix
        - xSuffix
        - ySuffix
        - binSize
      type: object
    HistogramViewProperties:
      properties:
        binCount:
          type: integer
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            $ref: "#/components/schemas/DashboardColor"
          type: array
        fillColumns:
          items:
            type: string
          type: array
        legendColorizeRows:
          type: boolean
        legendHide:
          type: boolean
        legendOpacity:
          format: float
          type: number
        legendOrientationThreshold:
          type: integer
        note:
          type: string
        position:
          enum:
            - overlaid
            - stacked
          type: string
        queries:
          items:
            $ref: "#/components/schemas/DashboardQuery"
          type: array
        shape:
          enum:
            - chronograf-v2
          type: string
        showNoteWhenEmpty:
          description: If true, will display note when empty
          type: boolean
        type:
          enum:
            - histogram
          type: string
        xAxisLabel:
          type: string
        xColumn:
          type: string
        xDomain:
          items:
            format: float
            type: number
          type: array
      required:
        - type
        - queries
        - colors
        - shape
        - note
        - showNoteWhenEmpty
        - xColumn
        - fillColumns
        - xDomain
        - xAxisLabel
        - position
        - binCount
      type: object
    Identifier:
      description: A valid Flux identifier
      properties:
        name:
          type: string
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    ImportDeclaration:
      description: Declares a package import
      properties:
        as:
          $ref: "#/components/schemas/Identifier"
        path:
          $ref: "#/components/schemas/StringLiteral"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    IndexExpression:
      description: Represents indexing into an array
      properties:
        array:
          $ref: "#/components/schemas/Expression"
        index:
          $ref: "#/components/schemas/Expression"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    InfluxQLQuery:
      description: Query influx using the InfluxQL language
      properties:
        bucket:
          description: Bucket is to be used instead of the database and retention policy
            specified in the InfluxQL query.
          type: string
        query:
          description: InfluxQL query execute.
          type: string
        type:
          description: The type of query. Must be "influxql".
          enum:
            - influxql
          type: string
      required:
        - query
      type: object
    IntegerLiteral:
      description: Represents integer numbers
      properties:
        type:
          $ref: "#/components/schemas/NodeType"
        value:
          type: string
      type: object
    IsOnboarding:
      properties:
        allowed:
          description: True means that the influxdb instance has NOT had initial setup;
            false means that the database has been setup.
          type: boolean
      type: object
    Label:
      properties:
        id:
          readOnly: true
          type: string
        name:
          type: string
        orgID:
          readOnly: true
          type: string
        properties:
          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
          type: object
      type: object
    LabelCreateRequest:
      properties:
        name:
          type: string
        orgID:
          type: string
        properties:
          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
          type: object
      required:
        - orgID
        - name
      type: object
    LabelMapping:
      properties:
        labelID:
          type: string
      type: object
    LabelResponse:
      properties:
        label:
          $ref: "#/components/schemas/Label"
        links:
          $ref: "#/components/schemas/Links"
      type: object
    LabelUpdate:
      properties:
        name:
          type: string
        properties:
          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
          type: object
      type: object
    Labels:
      items:
        $ref: "#/components/schemas/Label"
      type: array
    LabelsResponse:
      properties:
        labels:
          $ref: "#/components/schemas/Labels"
        links:
          $ref: "#/components/schemas/Links"
      type: object
    LanguageRequest:
      description: Flux query to be analyzed.
      properties:
        query:
          description: Flux query script to be analyzed
          type: string
      required:
        - query
      type: object
    LesserThreshold:
      allOf:
        - $ref: "#/components/schemas/ThresholdBase"
        - properties:
            type:
              enum:
                - lesser
              type: string
            value:
              format: float
              type: number
          required:
            - type
            - value
          type: object
    LinePlusSingleStatProperties:
      properties:
        axes:
          $ref: "#/components/schemas/Axes"
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            $ref: "#/components/schemas/DashboardColor"
          type: array
        decimalPlaces:
          $ref: "#/components/schemas/DecimalPlaces"
        generateXAxisTicks:
          items:
            type: string
          type: array
        generateYAxisTicks:
          items:
            type: string
          type: array
        hoverDimension:
          enum:
            - auto
            - x
            - y
            - xy
          type: string
        legendColorizeRows:
          type: boolean
        legendHide:
          type: boolean
        legendOpacity:
          format: float
          type: number
        legendOrientationThreshold:
          type: integer
        note:
          type: string
        position:
          enum:
            - overlaid
            - stacked
          type: string
        prefix:
          type: string
        queries:
          items:
            $ref: "#/components/schemas/DashboardQuery"
          type: array
        shadeBelow:
          type: boolean
        shape:
          enum:
            - chronograf-v2
          type: string
        showNoteWhenEmpty:
          description: If true, will display note when empty
          type: boolean
        staticLegend:
          $ref: "#/components/schemas/StaticLegend"
        suffix:
          type: string
        timeFormat:
          type: string
        type:
          enum:
            - line-plus-single-stat
          type: string
        xColumn:
          type: string
        xTickStart:
          format: float
          type: number
        xTickStep:
          format: float
          type: number
        xTotalTicks:
          type: integer
        yColumn:
          type: string
        yTickStart:
          format: float
          type: number
        yTickStep:
          format: float
          type: number
        yTotalTicks:
          type: integer
      required:
        - type
        - queries
        - shape
        - axes
        - colors
        - note
        - showNoteWhenEmpty
        - prefix
        - suffix
        - decimalPlaces
        - position
      type: object
    LineProtocolError:
      properties:
        code:
          description: Code is the machine-readable error code.
          enum:
            - internal error
            - not found
            - conflict
            - invalid
            - empty value
            - unavailable
          readOnly: true
          type: string
        err:
          description: Err is a stack of errors that occurred during processing of the
            request. Useful for debugging.
          readOnly: true
          type: string
        line:
          description: First line within sent body containing malformed data
          format: int32
          readOnly: true
          type: integer
        message:
          description: Message is a human-readable message.
          readOnly: true
          type: string
        op:
          description: Op describes the logical code operation during error. Useful for
            debugging.
          readOnly: true
          type: string
      required:
        - code
        - message
        - op
        - err
    LineProtocolLengthError:
      properties:
        code:
          description: Code is the machine-readable error code.
          enum:
            - invalid
          readOnly: true
          type: string
        maxLength:
          description: Max length in bytes for a body of line-protocol.
          format: int32
          readOnly: true
          type: integer
        message:
          description: Message is a human-readable message.
          readOnly: true
          type: string
      required:
        - code
        - message
        - maxLength
    Link:
      description: URI of resource.
      format: uri
      readOnly: true
      type: string
    Links:
      properties:
        next:
          $ref: "#/components/schemas/Link"
        prev:
          $ref: "#/components/schemas/Link"
        self:
          $ref: "#/components/schemas/Link"
      required:
        - self
      type: object
    LogEvent:
      properties:
        message:
          description: A description of the event that occurred.
          example: Halt and catch fire
          readOnly: true
          type: string
        runID:
          description: the ID of the task that logged
          readOnly: true
          type: string
        time:
          description: Time event occurred, RFC3339Nano.
          format: date-time
          readOnly: true
          type: string
      type: object
    LogicalExpression:
      description: Represents the rule conditions that collectively evaluate to either
        true or false
      properties:
        left:
          $ref: "#/components/schemas/Expression"
        operator:
          type: string
        right:
          $ref: "#/components/schemas/Expression"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    Logs:
      properties:
        events:
          items:
            $ref: "#/components/schemas/LogEvent"
          readOnly: true
          type: array
      type: object
    MapVariableProperties:
      properties:
        type:
          enum:
            - map
          type: string
        values:
          additionalProperties:
            type: string
          type: object
    MarkdownViewProperties:
      properties:
        note:
          type: string
        shape:
          enum:
            - chronograf-v2
          type: string
        type:
          enum:
            - markdown
          type: string
      required:
        - type
        - shape
        - note
      type: object
    MemberAssignment:
      description: Object property assignment
      properties:
        init:
          $ref: "#/components/schemas/Expression"
        member:
          $ref: "#/components/schemas/MemberExpression"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    MemberExpression:
      description: Represents accessing a property of an object
      properties:
        object:
          $ref: "#/components/schemas/Expression"
        property:
          $ref: "#/components/schemas/PropertyKey"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    MosaicViewProperties:
      properties:
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            type: string
          type: array
        fillColumns:
          items:
            type: string
          type: array
        generateXAxisTicks:
          items:
            type: string
          type: array
        hoverDimension:
          enum:
            - auto
            - x
            - y
            - xy
          type: string
        legendColorizeRows:
          type: boolean
        legendHide:
          type: boolean
        legendOpacity:
          format: float
          type: number
        legendOrientationThreshold:
          type: integer
        note:
          type: string
        queries:
          items:
            $ref: "#/components/schemas/DashboardQuery"
          type: array
        shape:
          enum:
            - chronograf-v2
          type: string
        showNoteWhenEmpty:
          description: If true, will display note when empty
          type: boolean
        timeFormat:
          type: string
        type:
          enum:
            - mosaic
          type: string
        xAxisLabel:
          type: string
        xColumn:
          type: string
        xDomain:
          items:
            type: number
          maxItems: 2
          type: array
        xPrefix:
          type: string
        xSuffix:
          type: string
        xTickStart:
          format: float
          type: number
        xTickStep:
          format: float
          type: number
        xTotalTicks:
          type: integer
        yAxisLabel:
          type: string
        yDomain:
          items:
            type: number
          maxItems: 2
          type: array
        yLabelColumnSeparator:
          type: string
        yLabelColumns:
          items:
            type: string
          type: array
        yPrefix:
          type: string
        ySeriesColumns:
          items:
            type: string
          type: array
        ySuffix:
          type: string
      required:
        - type
        - queries
        - colors
        - shape
        - note
        - showNoteWhenEmpty
        - xColumn
        - ySeriesColumns
        - fillColumns
        - xDomain
        - yDomain
        - xAxisLabel
        - yAxisLabel
        - xPrefix
        - yPrefix
        - xSuffix
        - ySuffix
      type: object
    Node:
      oneOf:
        - $ref: "#/components/schemas/Expression"
        - $ref: "#/components/schemas/Block"
    NodeType:
      description: Type of AST node
      type: string
    NotificationEndpoint:
      allOf:
        - $ref: "#/components/schemas/NotificationEndpointDiscriminator"
    NotificationEndpointBase:
      properties:
        createdAt:
          format: date-time
          readOnly: true
          type: string
        description:
          description: An optional description of the notification endpoint.
          type: string
        id:
          type: string
        labels:
          $ref: "#/components/schemas/Labels"
        links:
          example:
            labels: /api/v2/notificationEndpoints/1/labels
            members: /api/v2/notificationEndpoints/1/members
            owners: /api/v2/notificationEndpoints/1/owners
            self: /api/v2/notificationEndpoints/1
          properties:
            labels:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve labels for this endpoint.
            members:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve members for this endpoint.
            owners:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve owners for this endpoint.
            self:
              $ref: "#/components/schemas/Link"
              description: URL for this endpoint.
          readOnly: true
          type: object
        name:
          type: string
        orgID:
          type: string
        status:
          default: active
          description: The status of the endpoint.
          enum:
            - active
            - inactive
          type: string
        type:
          $ref: "#/components/schemas/NotificationEndpointType"
        updatedAt:
          format: date-time
          readOnly: true
          type: string
        userID:
          type: string
      required:
        - type
        - name
      type: object
    NotificationEndpointDiscriminator:
      discriminator:
        mapping:
          http: "#/components/schemas/HTTPNotificationEndpoint"
          pagerduty: "#/components/schemas/PagerDutyNotificationEndpoint"
          slack: "#/components/schemas/SlackNotificationEndpoint"
          telegram: "#/components/schemas/TelegramNotificationEndpoint"
        propertyName: type
      oneOf:
        - $ref: "#/components/schemas/SlackNotificationEndpoint"
        - $ref: "#/components/schemas/PagerDutyNotificationEndpoint"
        - $ref: "#/components/schemas/HTTPNotificationEndpoint"
        - $ref: "#/components/schemas/TelegramNotificationEndpoint"
    NotificationEndpointType:
      enum:
        - slack
        - pagerduty
        - http
        - telegram
      type: string
    NotificationEndpointUpdate:
      properties:
        description:
          type: string
        name:
          type: string
        status:
          enum:
            - active
            - inactive
          type: string
      type: object
    NotificationEndpoints:
      properties:
        links:
          $ref: "#/components/schemas/Links"
        notificationEndpoints:
          items:
            $ref: "#/components/schemas/NotificationEndpoint"
          type: array
    NotificationRule:
      allOf:
        - $ref: "#/components/schemas/NotificationRuleDiscriminator"
    NotificationRuleBase:
      properties:
        createdAt:
          format: date-time
          readOnly: true
          type: string
        description:
          description: An optional description of the notification rule.
          type: string
        endpointID:
          type: string
        every:
          description: The notification repetition interval.
          type: string
        id:
          readOnly: true
          type: string
        labels:
          $ref: "#/components/schemas/Labels"
        lastRunError:
          readOnly: true
          type: string
        lastRunStatus:
          enum:
            - failed
            - success
            - canceled
          readOnly: true
          type: string
        latestCompleted:
          description: Timestamp of latest scheduled, completed run, RFC3339.
          format: date-time
          readOnly: true
          type: string
        limit:
          description: Don't notify me more than &lt;limit&gt; times every
            &lt;limitEvery&gt; seconds. If set, limitEvery cannot be empty.
          type: integer
        limitEvery:
          description: Don't notify me more than &lt;limit&gt; times every
            &lt;limitEvery&gt; seconds. If set, limit cannot be empty.
          type: integer
        links:
          example:
            labels: /api/v2/notificationRules/1/labels
            members: /api/v2/notificationRules/1/members
            owners: /api/v2/notificationRules/1/owners
            query: /api/v2/notificationRules/1/query
            self: /api/v2/notificationRules/1
          properties:
            labels:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve labels for this notification rule.
            members:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve members for this notification rule.
            owners:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve owners for this notification rule.
            query:
              $ref: "#/components/schemas/Link"
              description: URL to retrieve flux script for this notification rule.
            self:
              $ref: "#/components/schemas/Link"
              description: URL for this endpoint.
          readOnly: true
          type: object
        name:
          description: Human-readable name describing the notification rule.
          type: string
        offset:
          description: Duration to delay after the schedule, before executing check.
          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.
          readOnly: true
          type: string
        runbookLink:
          type: string
        sleepUntil:
          type: string
        status:
          $ref: "#/components/schemas/TaskStatusType"
        statusRules:
          description: List of status rules the notification rule attempts to match.
          items:
            $ref: "#/components/schemas/StatusRule"
          minItems: 1
          type: array
        tagRules:
          description: List of tag rules the notification rule attempts to match.
          items:
            $ref: "#/components/schemas/TagRule"
          type: array
        taskID:
          description: The ID of the task associated with this notification rule.
          type: string
        updatedAt:
          format: date-time
          readOnly: true
          type: string
      required:
        - orgID
        - status
        - name
        - statusRules
        - endpointID
      type: object
    NotificationRuleDiscriminator:
      discriminator:
        mapping:
          http: "#/components/schemas/HTTPNotificationRule"
          pagerduty: "#/components/schemas/PagerDutyNotificationRule"
          slack: "#/components/schemas/SlackNotificationRule"
          smtp: "#/components/schemas/SMTPNotificationRule"
          telegram: "#/components/schemas/TelegramNotificationRule"
        propertyName: type
      oneOf:
        - $ref: "#/components/schemas/SlackNotificationRule"
        - $ref: "#/components/schemas/SMTPNotificationRule"
        - $ref: "#/components/schemas/PagerDutyNotificationRule"
        - $ref: "#/components/schemas/HTTPNotificationRule"
        - $ref: "#/components/schemas/TelegramNotificationRule"
    NotificationRuleUpdate:
      properties:
        description:
          type: string
        name:
          type: string
        status:
          enum:
            - active
            - inactive
          type: string
      type: object
    NotificationRules:
      properties:
        links:
          $ref: "#/components/schemas/Links"
        notificationRules:
          items:
            $ref: "#/components/schemas/NotificationRule"
          type: array
    ObjectExpression:
      description: Allows the declaration of an anonymous object within a declaration
      properties:
        properties:
          description: Object properties
          items:
            $ref: "#/components/schemas/Property"
          type: array
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    OnboardingRequest:
      properties:
        bucket:
          type: string
        org:
          type: string
        password:
          type: string
        retentionPeriodHrs:
          deprecated: true
          description: >
            Retention period *in nanoseconds* for the new bucket. This key's
            name has been misleading since OSS 2.0 GA, please transition to use
            `retentionPeriodSeconds`
          type: integer
        retentionPeriodSeconds:
          format: int64
          type: integer
        token:
          description: >
            Authentication token to set on the initial user. If not specified,
            the server will generate a token.
          type: string
        username:
          type: string
      required:
        - username
        - org
        - bucket
      type: object
    OnboardingResponse:
      properties:
        auth:
          $ref: "#/components/schemas/Authorization"
        bucket:
          $ref: "#/components/schemas/Bucket"
        org:
          $ref: "#/components/schemas/Organization"
        user:
          $ref: "#/components/schemas/UserResponse"
      type: object
    OptionStatement:
      description: A single variable declaration
      properties:
        assignment:
          oneOf:
            - $ref: "#/components/schemas/VariableAssignment"
            - $ref: "#/components/schemas/MemberAssignment"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    Organization:
      properties:
        createdAt:
          format: date-time
          readOnly: true
          type: string
        description:
          type: string
        id:
          readOnly: true
          type: string
        links:
          example:
            buckets: /api/v2/buckets?org=myorg
            dashboards: /api/v2/dashboards?org=myorg
            labels: /api/v2/orgs/1/labels
            members: /api/v2/orgs/1/members
            owners: /api/v2/orgs/1/owners
            secrets: /api/v2/orgs/1/secrets
            self: /api/v2/orgs/1
            tasks: /api/v2/tasks?org=myorg
          properties:
            buckets:
              $ref: "#/components/schemas/Link"
            dashboards:
              $ref: "#/components/schemas/Link"
            labels:
              $ref: "#/components/schemas/Link"
            members:
              $ref: "#/components/schemas/Link"
            owners:
              $ref: "#/components/schemas/Link"
            secrets:
              $ref: "#/components/schemas/Link"
            self:
              $ref: "#/components/schemas/Link"
            tasks:
              $ref: "#/components/schemas/Link"
          readOnly: true
          type: object
        name:
          type: string
        status:
          default: active
          description: If inactive the organization is inactive.
          enum:
            - active
            - inactive
          type: string
        updatedAt:
          format: date-time
          readOnly: true
          type: string
      required:
        - name
    Organizations:
      properties:
        links:
          $ref: "#/components/schemas/Links"
        orgs:
          items:
            $ref: "#/components/schemas/Organization"
          type: array
      type: object
    Package:
      description: Represents a complete package source tree.
      properties:
        files:
          description: Package files
          items:
            $ref: "#/components/schemas/File"
          type: array
        package:
          description: Package name
          type: string
        path:
          description: Package import path
          type: string
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    PackageClause:
      description: Defines a package identifier
      properties:
        name:
          $ref: "#/components/schemas/Identifier"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    PagerDutyNotificationEndpoint:
      allOf:
        - $ref: "#/components/schemas/NotificationEndpointBase"
        - properties:
            clientURL:
              type: string
            routingKey:
              type: string
          required:
            - routingKey
          type: object
      type: object
    PagerDutyNotificationRule:
      allOf:
        - $ref: "#/components/schemas/NotificationRuleBase"
        - $ref: "#/components/schemas/PagerDutyNotificationRuleBase"
    PagerDutyNotificationRuleBase:
      properties:
        messageTemplate:
          type: string
        type:
          enum:
            - pagerduty
          type: string
      required:
        - type
        - messageTemplate
      type: object
    ParenExpression:
      description: Represents an expression wrapped in parenthesis
      properties:
        expression:
          $ref: "#/components/schemas/Expression"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    PasswordResetBody:
      properties:
        password:
          type: string
      required:
        - password
    PatchBucketRequest:
      description: Updates to an existing bucket resource.
      properties:
        description:
          type: string
        name:
          type: string
        retentionRules:
          $ref: "#/components/schemas/PatchRetentionRules"
      type: object
    PatchOrganizationRequest:
      properties:
        description:
          description: New description to set on the organization
          type: string
        name:
          description: New name to set on the organization
          type: string
      type: object
    PatchRetentionRule:
      description: Updates to a rule to expire or retain data.
      properties:
        everySeconds:
          description: Duration in seconds for how long data will be kept in the database.
            0 means infinite.
          example: 86400
          format: int64
          minimum: 0
          type: integer
        shardGroupDurationSeconds:
          description: Shard duration measured in seconds.
          format: int64
          type: integer
        type:
          default: expire
          enum:
            - expire
          type: string
      required:
        - type
      type: object
    PatchRetentionRules:
      description: Updates to rules to expire or retain data. No rules means no updates.
      items:
        $ref: "#/components/schemas/PatchRetentionRule"
      type: array
    Permission:
      properties:
        action:
          enum:
            - read
            - write
          type: string
        resource:
          $ref: "#/components/schemas/Resource"
      required:
        - action
        - resource
    PipeExpression:
      description: Call expression with pipe argument
      properties:
        argument:
          $ref: "#/components/schemas/Expression"
        call:
          $ref: "#/components/schemas/CallExpression"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    PipeLiteral:
      description: Represents a specialized literal value, indicating the left hand
        value of a pipe expression
      properties:
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    PostBucketRequest:
      properties:
        description:
          type: string
        name:
          type: string
        orgID:
          type: string
        retentionRules:
          $ref: "#/components/schemas/RetentionRules"
        rp:
          type: string
        schemaType:
          $ref: "#/components/schemas/SchemaType"
          default: implicit
      required:
        - orgID
        - name
        - retentionRules
    PostCheck:
      allOf:
        - $ref: "#/components/schemas/CheckDiscriminator"
    PostNotificationEndpoint:
      allOf:
        - $ref: "#/components/schemas/NotificationEndpointDiscriminator"
    PostNotificationRule:
      allOf:
        - $ref: "#/components/schemas/NotificationRuleDiscriminator"
    PostOrganizationRequest:
      properties:
        description:
          type: string
        name:
          type: string
      required:
        - name
      type: object
    Property:
      description: The value associated with a key
      properties:
        key:
          $ref: "#/components/schemas/PropertyKey"
        type:
          $ref: "#/components/schemas/NodeType"
        value:
          $ref: "#/components/schemas/Expression"
      type: object
    PropertyKey:
      oneOf:
        - $ref: "#/components/schemas/Identifier"
        - $ref: "#/components/schemas/StringLiteral"
    Query:
      description: Query influx using the Flux language
      properties:
        dialect:
          $ref: "#/components/schemas/Dialect"
        extern:
          $ref: "#/components/schemas/File"
        now:
          description: Specifies the time that should be reported as "now" in the query.
            Default is the server's now time.
          format: date-time
          type: string
        params:
          additionalProperties: true
          description: >
            Enumeration of key/value pairs that respresent parameters to be
            injected into query (can only specify either this field or extern
            and not both)
          type: object
        query:
          description: Query script to execute.
          type: string
        type:
          description: The type of query. Must be "flux".
          enum:
            - flux
          type: string
      required:
        - query
      type: object
    QueryEditMode:
      enum:
        - builder
        - advanced
      type: string
    QueryVariableProperties:
      properties:
        type:
          enum:
            - query
          type: string
        values:
          properties:
            language:
              type: string
            query:
              type: string
          type: object
    RangeThreshold:
      allOf:
        - $ref: "#/components/schemas/ThresholdBase"
        - properties:
            max:
              format: float
              type: number
            min:
              format: float
              type: number
            type:
              enum:
                - range
              type: string
            within:
              type: boolean
          required:
            - type
            - min
            - max
            - within
          type: object
    Ready:
      properties:
        started:
          example: 2019-03-13T10:09:33.891196-04:00
          format: date-time
          type: string
        status:
          enum:
            - ready
          type: string
        up:
          example: 14m45.911966424s
          type: string
      type: object
    RegexpLiteral:
      description: Expressions begin and end with `/` and are regular expressions with
        syntax accepted by RE2
      properties:
        type:
          $ref: "#/components/schemas/NodeType"
        value:
          type: string
      type: object
    RenamableField:
      description: Describes a field that can be renamed and made visible or invisible.
      properties:
        displayName:
          description: The name that a field is renamed to by the user.
          type: string
        internalName:
          description: The calculated name of a field.
          readOnly: true
          type: string
        visible:
          description: Indicates whether this field should be visible on the table.
          type: boolean
      type: object
    Resource:
      properties:
        id:
          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.
          nullable: true
          type: string
        name:
          description: Optional name of the resource if the resource has a name field.
          nullable: true
          type: string
        org:
          description: Optional name of the organization of the organization with orgID.
          nullable: true
          type: string
        orgID:
          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.
          nullable: true
          type: string
        type:
          enum:
            - authorizations
            - buckets
            - dashboards
            - orgs
            - sources
            - tasks
            - telegrafs
            - users
            - variables
            - scrapers
            - secrets
            - labels
            - views
            - documents
            - notificationRules
            - notificationEndpoints
            - checks
            - dbrp
            - notebooks
          type: string
      required:
        - type
      type: object
    ResourceMember:
      allOf:
        - $ref: "#/components/schemas/UserResponse"
        - properties:
            role:
              default: member
              enum:
                - member
              type: string
          type: object
    ResourceMembers:
      properties:
        links:
          properties:
            self:
              format: uri
              type: string
          type: object
        users:
          items:
            $ref: "#/components/schemas/ResourceMember"
          type: array
      type: object
    ResourceOwner:
      allOf:
        - $ref: "#/components/schemas/UserResponse"
        - properties:
            role:
              default: owner
              enum:
                - owner
              type: string
          type: object
    ResourceOwners:
      properties:
        links:
          properties:
            self:
              format: uri
              type: string
          type: object
        users:
          items:
            $ref: "#/components/schemas/ResourceOwner"
          type: array
      type: object
    RetentionRule:
      properties:
        everySeconds:
          description: Duration in seconds for how long data will be kept in the database.
            0 means infinite.
          example: 86400
          format: int64
          minimum: 0
          type: integer
        shardGroupDurationSeconds:
          description: Shard duration measured in seconds.
          format: int64
          type: integer
        type:
          default: expire
          enum:
            - expire
          type: string
      required:
        - type
        - everySeconds
      type: object
    RetentionRules:
      description: Rules to expire or retain data.  No rules means data never expires.
      items:
        $ref: "#/components/schemas/RetentionRule"
      type: array
    ReturnStatement:
      description: Defines an expression to return
      properties:
        argument:
          $ref: "#/components/schemas/Expression"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    Routes:
      properties:
        authorizations:
          format: uri
          type: string
        buckets:
          format: uri
          type: string
        dashboards:
          format: uri
          type: string
        external:
          properties:
            statusFeed:
              format: uri
              type: string
          type: object
        flags:
          format: uri
          type: string
        me:
          format: uri
          type: string
        orgs:
          format: uri
          type: string
        query:
          properties:
            analyze:
              format: uri
              type: string
            ast:
              format: uri
              type: string
            self:
              format: uri
              type: string
            suggestions:
              format: uri
              type: string
          type: object
        setup:
          format: uri
          type: string
        signin:
          format: uri
          type: string
        signout:
          format: uri
          type: string
        sources:
          format: uri
          type: string
        system:
          properties:
            debug:
              format: uri
              type: string
            health:
              format: uri
              type: string
            metrics:
              format: uri
              type: string
          type: object
        tasks:
          format: uri
          type: string
        telegrafs:
          format: uri
          type: string
        users:
          format: uri
          type: string
        variables:
          format: uri
          type: string
        write:
          format: uri
          type: string
    RuleStatusLevel:
      description: The state to record if check matches a criteria.
      enum:
        - UNKNOWN
        - OK
        - INFO
        - CRIT
        - WARN
        - ANY
      type: string
    Run:
      properties:
        finishedAt:
          description: Time run finished executing, RFC3339Nano.
          format: date-time
          readOnly: true
          type: string
        id:
          readOnly: true
          type: string
        links:
          example:
            retry: /api/v2/tasks/1/runs/1/retry
            self: /api/v2/tasks/1/runs/1
            task: /api/v2/tasks/1
          properties:
            retry:
              format: uri
              type: string
            self:
              format: uri
              type: string
            task:
              format: uri
              type: string
          readOnly: true
          type: object
        log:
          description: An array of logs associated with the run.
          items:
            $ref: "#/components/schemas/LogEvent"
          readOnly: true
          type: array
        requestedAt:
          description: Time run was manually requested, RFC3339Nano.
          format: date-time
          readOnly: true
          type: string
        scheduledFor:
          description: Time used for run's "now" option, RFC3339.
          format: date-time
          type: string
        startedAt:
          description: Time run started executing, RFC3339Nano.
          format: date-time
          readOnly: true
          type: string
        status:
          enum:
            - scheduled
            - started
            - failed
            - success
            - canceled
          readOnly: true
          type: string
        taskID:
          readOnly: true
          type: string
    RunManually:
      properties:
        scheduledFor:
          description: Time used for run's "now" option, RFC3339.  Default is the server's
            now time.
          format: date-time
          nullable: true
          type: string
    Runs:
      properties:
        links:
          $ref: "#/components/schemas/Links"
        runs:
          items:
            $ref: "#/components/schemas/Run"
          type: array
      type: object
    SMTPNotificationRule:
      allOf:
        - $ref: "#/components/schemas/NotificationRuleBase"
        - $ref: "#/components/schemas/SMTPNotificationRuleBase"
    SMTPNotificationRuleBase:
      properties:
        bodyTemplate:
          type: string
        subjectTemplate:
          type: string
        to:
          type: string
        type:
          enum:
            - smtp
          type: string
      required:
        - type
        - subjectTemplate
        - to
      type: object
    ScatterViewProperties:
      properties:
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            type: string
          type: array
        fillColumns:
          items:
            type: string
          type: array
        generateXAxisTicks:
          items:
            type: string
          type: array
        generateYAxisTicks:
          items:
            type: string
          type: array
        legendColorizeRows:
          type: boolean
        legendHide:
          type: boolean
        legendOpacity:
          format: float
          type: number
        legendOrientationThreshold:
          type: integer
        note:
          type: string
        queries:
          items:
            $ref: "#/components/schemas/DashboardQuery"
          type: array
        shape:
          enum:
            - chronograf-v2
          type: string
        showNoteWhenEmpty:
          description: If true, will display note when empty
          type: boolean
        symbolColumns:
          items:
            type: string
          type: array
        timeFormat:
          type: string
        type:
          enum:
            - scatter
          type: string
        xAxisLabel:
          type: string
        xColumn:
          type: string
        xDomain:
          items:
            type: number
          maxItems: 2
          type: array
        xPrefix:
          type: string
        xSuffix:
          type: string
        xTickStart:
          format: float
          type: number
        xTickStep:
          format: float
          type: number
        xTotalTicks:
          type: integer
        yAxisLabel:
          type: string
        yColumn:
          type: string
        yDomain:
          items:
            type: number
          maxItems: 2
          type: array
        yPrefix:
          type: string
        ySuffix:
          type: string
        yTickStart:
          format: float
          type: number
        yTickStep:
          format: float
          type: number
        yTotalTicks:
          type: integer
      required:
        - type
        - queries
        - colors
        - shape
        - note
        - showNoteWhenEmpty
        - xColumn
        - yColumn
        - fillColumns
        - symbolColumns
        - xDomain
        - yDomain
        - xAxisLabel
        - yAxisLabel
        - xPrefix
        - yPrefix
        - xSuffix
        - ySuffix
      type: object
    SchemaType:
      enum:
        - implicit
        - explicit
      type: string
    ScraperTargetRequest:
      properties:
        allowInsecure:
          default: false
          description: Skip TLS verification on endpoint.
          type: boolean
        bucketID:
          description: The ID of the bucket to write to.
          type: string
        name:
          description: The name of the scraper target.
          type: string
        orgID:
          description: The organization ID.
          type: string
        type:
          description: The type of the metrics to be parsed.
          enum:
            - prometheus
          type: string
        url:
          description: The URL of the metrics endpoint.
          example: http://localhost:9090/metrics
          type: string
      type: object
    ScraperTargetResponse:
      allOf:
        - $ref: "#/components/schemas/ScraperTargetRequest"
        - properties:
            bucket:
              description: The bucket name.
              type: string
            id:
              readOnly: true
              type: string
            links:
              example:
                bucket: /api/v2/buckets/1
                members: /api/v2/scrapers/1/members
                organization: /api/v2/orgs/1
                owners: /api/v2/scrapers/1/owners
                self: /api/v2/scrapers/1
              properties:
                bucket:
                  $ref: "#/components/schemas/Link"
                members:
                  $ref: "#/components/schemas/Link"
                organization:
                  $ref: "#/components/schemas/Link"
                owners:
                  $ref: "#/components/schemas/Link"
                self:
                  $ref: "#/components/schemas/Link"
              readOnly: true
              type: object
            org:
              description: The name of the organization.
              type: string
          type: object
      type: object
    ScraperTargetResponses:
      properties:
        configurations:
          items:
            $ref: "#/components/schemas/ScraperTargetResponse"
          type: array
      type: object
    SecretKeys:
      properties:
        secrets:
          items:
            type: string
          type: array
      type: object
    SecretKeysResponse:
      allOf:
        - $ref: "#/components/schemas/SecretKeys"
        - properties:
            links:
              properties:
                org:
                  type: string
                self:
                  type: string
              readOnly: true
              type: object
          type: object
    Secrets:
      additionalProperties:
        type: string
      example:
        apikey: abc123xyz
    SingleStatViewProperties:
      properties:
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            $ref: "#/components/schemas/DashboardColor"
          type: array
        decimalPlaces:
          $ref: "#/components/schemas/DecimalPlaces"
        note:
          type: string
        prefix:
          type: string
        queries:
          items:
            $ref: "#/components/schemas/DashboardQuery"
          type: array
        shape:
          enum:
            - chronograf-v2
          type: string
        showNoteWhenEmpty:
          description: If true, will display note when empty
          type: boolean
        staticLegend:
          $ref: "#/components/schemas/StaticLegend"
        suffix:
          type: string
        tickPrefix:
          type: string
        tickSuffix:
          type: string
        type:
          enum:
            - single-stat
          type: string
      required:
        - type
        - queries
        - colors
        - shape
        - note
        - showNoteWhenEmpty
        - prefix
        - tickPrefix
        - suffix
        - tickSuffix
        - decimalPlaces
      type: object
    SlackNotificationEndpoint:
      allOf:
        - $ref: "#/components/schemas/NotificationEndpointBase"
        - properties:
            token:
              description: Specifies the API token string. Specify either `URL` or `Token`.
              type: string
            url:
              description: Specifies the URL of the Slack endpoint. Specify either `URL` or
                `Token`.
              type: string
          type: object
      type: object
    SlackNotificationRule:
      allOf:
        - $ref: "#/components/schemas/NotificationRuleBase"
        - $ref: "#/components/schemas/SlackNotificationRuleBase"
    SlackNotificationRuleBase:
      properties:
        channel:
          type: string
        messageTemplate:
          type: string
        type:
          enum:
            - slack
          type: string
      required:
        - type
        - messageTemplate
      type: object
    Source:
      properties:
        default:
          type: boolean
        defaultRP:
          type: string
        id:
          type: string
        insecureSkipVerify:
          type: boolean
        languages:
          items:
            enum:
              - flux
              - influxql
            type: string
          readOnly: true
          type: array
        links:
          properties:
            buckets:
              type: string
            health:
              type: string
            query:
              type: string
            self:
              type: string
          type: object
        metaUrl:
          format: uri
          type: string
        name:
          type: string
        orgID:
          type: string
        password:
          type: string
        sharedSecret:
          type: string
        telegraf:
          type: string
        token:
          type: string
        type:
          enum:
            - v1
            - v2
            - self
          type: string
        url:
          format: uri
          type: string
        username:
          type: string
      type: object
    Sources:
      properties:
        links:
          properties:
            self:
              format: uri
              type: string
          type: object
        sources:
          items:
            $ref: "#/components/schemas/Source"
          type: array
      type: object
    Stack:
      properties:
        createdAt:
          format: date-time
          readOnly: true
          type: string
        events:
          items:
            properties:
              description:
                type: string
              eventType:
                type: string
              name:
                type: string
              resources:
                items:
                  properties:
                    apiVersion:
                      type: string
                    associations:
                      items:
                        properties:
                          kind:
                            $ref: "#/components/schemas/TemplateKind"
                          metaName:
                            type: string
                        type: object
                      type: array
                    kind:
                      $ref: "#/components/schemas/TemplateKind"
                    links:
                      properties:
                        self:
                          type: string
                      type: object
                    resourceID:
                      type: string
                    templateMetaName:
                      type: string
                  type: object
                type: array
              sources:
                items:
                  type: string
                type: array
              updatedAt:
                format: date-time
                readOnly: true
                type: string
              urls:
                items:
                  type: string
                type: array
            type: object
          type: array
        id:
          type: string
        orgID:
          type: string
      type: object
    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"
    StaticLegend:
      description: StaticLegend represents the options specific to the static legend
      properties:
        colorizeRows:
          type: boolean
        heightRatio:
          format: float
          type: number
        hide:
          type: boolean
        opacity:
          format: float
          type: number
        orientationThreshold:
          type: integer
        valueAxis:
          type: string
        widthRatio:
          format: float
          type: number
      type: object
    StatusRule:
      properties:
        count:
          type: integer
        currentLevel:
          $ref: "#/components/schemas/RuleStatusLevel"
        period:
          type: string
        previousLevel:
          $ref: "#/components/schemas/RuleStatusLevel"
      type: object
    StringLiteral:
      description: Expressions begin and end with double quote marks
      properties:
        type:
          $ref: "#/components/schemas/NodeType"
        value:
          type: string
      type: object
    TableViewProperties:
      properties:
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            $ref: "#/components/schemas/DashboardColor"
          type: array
        decimalPlaces:
          $ref: "#/components/schemas/DecimalPlaces"
        fieldOptions:
          description: fieldOptions represent the fields retrieved by the query with
            customization options
          items:
            $ref: "#/components/schemas/RenamableField"
          type: array
        note:
          type: string
        queries:
          items:
            $ref: "#/components/schemas/DashboardQuery"
          type: array
        shape:
          enum:
            - chronograf-v2
          type: string
        showNoteWhenEmpty:
          description: If true, will display note when empty
          type: boolean
        tableOptions:
          properties:
            fixFirstColumn:
              description: fixFirstColumn indicates whether the first column of the table
                should be locked
              type: boolean
            sortBy:
              $ref: "#/components/schemas/RenamableField"
            verticalTimeAxis:
              description: verticalTimeAxis describes the orientation of the table by
                indicating whether the time axis will be displayed vertically
              type: boolean
            wrapping:
              description: Wrapping describes the text wrapping style to be used in table
                views
              enum:
                - truncate
                - wrap
                - single-line
              type: string
          type: object
        timeFormat:
          description: timeFormat describes the display format for time values according
            to moment.js date formatting
          type: string
        type:
          enum:
            - table
          type: string
      required:
        - type
        - queries
        - colors
        - shape
        - note
        - showNoteWhenEmpty
        - tableOptions
        - fieldOptions
        - timeFormat
        - decimalPlaces
      type: object
    TagRule:
      properties:
        key:
          type: string
        operator:
          enum:
            - equal
            - notequal
            - equalregex
            - notequalregex
          type: string
        value:
          type: string
      type: object
    Task:
      properties:
        authorizationID:
          description: The ID of the authorization used when this task communicates with
            the query engine.
          type: string
        createdAt:
          format: date-time
          readOnly: true
          type: string
        cron:
          description: A task repetition schedule in the form '* * * * * *'; parsed from
            Flux.
          type: string
        description:
          description: An optional description of the task.
          type: string
        every:
          description: A simple task repetition schedule; parsed from Flux.
          type: string
        flux:
          description: The Flux script to run for this task.
          type: string
        id:
          readOnly: true
          type: string
        labels:
          $ref: "#/components/schemas/Labels"
        lastRunError:
          readOnly: true
          type: string
        lastRunStatus:
          enum:
            - failed
            - success
            - canceled
          readOnly: true
          type: string
        latestCompleted:
          description: Timestamp of latest scheduled, completed run, RFC3339.
          format: date-time
          readOnly: true
          type: string
        links:
          example:
            labels: /api/v2/tasks/1/labels
            logs: /api/v2/tasks/1/logs
            members: /api/v2/tasks/1/members
            owners: /api/v2/tasks/1/owners
            runs: /api/v2/tasks/1/runs
            self: /api/v2/tasks/1
          properties:
            labels:
              $ref: "#/components/schemas/Link"
            logs:
              $ref: "#/components/schemas/Link"
            members:
              $ref: "#/components/schemas/Link"
            owners:
              $ref: "#/components/schemas/Link"
            runs:
              $ref: "#/components/schemas/Link"
            self:
              $ref: "#/components/schemas/Link"
          readOnly: true
          type: object
        name:
          description: The name of the task.
          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
        org:
          description: The name of the organization that owns this Task.
          type: string
        orgID:
          description: The ID of the organization that owns this Task.
          type: string
        status:
          $ref: "#/components/schemas/TaskStatusType"
        type:
          description: The type of task, this can be used for filtering tasks on list
            actions.
          type: string
        updatedAt:
          format: date-time
          readOnly: true
          type: string
      required:
        - id
        - name
        - orgID
        - flux
      type: object
    TaskCreateRequest:
      properties:
        description:
          description: An optional description of the task.
          type: string
        flux:
          description: The Flux script to run for this task.
          type: string
        org:
          description: The name of the organization that owns this Task.
          type: string
        orgID:
          description: The ID of the organization that owns this Task.
          type: string
        status:
          $ref: "#/components/schemas/TaskStatusType"
      required:
        - flux
      type: object
    TaskStatusType:
      enum:
        - active
        - inactive
      type: string
    TaskUpdateRequest:
      properties:
        cron:
          description: Override the 'cron' option in the flux script.
          type: string
        description:
          description: An optional description of the task.
          type: string
        every:
          description: Override the 'every' option in the flux script.
          type: string
        flux:
          description: The Flux script to run for this task.
          type: string
        name:
          description: Override the 'name' option in the flux script.
          type: string
        offset:
          description: Override the 'offset' option in the flux script.
          type: string
        status:
          $ref: "#/components/schemas/TaskStatusType"
      type: object
    Tasks:
      properties:
        links:
          $ref: "#/components/schemas/Links"
          readOnly: true
        tasks:
          items:
            $ref: "#/components/schemas/Task"
          type: array
      type: object
    Telegraf:
      allOf:
        - $ref: "#/components/schemas/TelegrafRequest"
        - properties:
            id:
              readOnly: true
              type: string
            labels:
              $ref: "#/components/schemas/Labels"
              readOnly: true
            links:
              example:
                lables: /api/v2/telegrafs/1/labels
                members: /api/v2/telegrafs/1/members
                owners: /api/v2/telegrafs/1/owners
                self: /api/v2/telegrafs/1
              properties:
                labels:
                  $ref: "#/components/schemas/Link"
                members:
                  $ref: "#/components/schemas/Link"
                owners:
                  $ref: "#/components/schemas/Link"
                self:
                  $ref: "#/components/schemas/Link"
              readOnly: true
              type: object
          type: object
      type: object
    TelegrafPlugin:
      properties:
        config:
          type: string
        description:
          type: string
        name:
          type: string
        type:
          type: string
      type: object
    TelegrafPlugins:
      properties:
        os:
          type: string
        plugins:
          items:
            $ref: "#/components/schemas/TelegrafPlugin"
          type: array
        version:
          type: string
      type: object
    TelegrafRequest:
      properties:
        config:
          type: string
        description:
          type: string
        metadata:
          properties:
            buckets:
              items:
                type: string
              type: array
          type: object
        name:
          type: string
        orgID:
          type: string
      type: object
    Telegrafs:
      properties:
        configurations:
          items:
            $ref: "#/components/schemas/Telegraf"
          type: array
      type: object
    TelegramNotificationEndpoint:
      allOf:
        - $ref: "#/components/schemas/NotificationEndpointBase"
        - properties:
            channel:
              description: ID of the telegram channel, a chat_id in
                https://core.telegram.org/bots/api#sendmessage .
              type: string
            token:
              description: Specifies the Telegram bot token. See
                https://core.telegram.org/bots#creating-a-new-bot .
              type: string
          required:
            - token
            - channel
          type: object
      type: object
    TelegramNotificationRule:
      allOf:
        - $ref: "#/components/schemas/NotificationRuleBase"
        - $ref: "#/components/schemas/TelegramNotificationRuleBase"
    TelegramNotificationRuleBase:
      properties:
        disableWebPagePreview:
          description: Disables preview of web links in the sent messages when "true".
            Defaults to "false" .
          type: boolean
        messageTemplate:
          description: The message template as a flux interpolated string.
          type: string
        parseMode:
          description: Parse mode of the message text per
            https://core.telegram.org/bots/api#formatting-options . Defaults to
            "MarkdownV2" .
          enum:
            - MarkdownV2
            - HTML
            - Markdown
          type: string
        type:
          description: The discriminator between other types of notification rules is
            "telegram".
          enum:
            - telegram
          type: string
      required:
        - type
        - messageTemplate
        - channel
      type: object
    Template:
      items:
        properties:
          apiVersion:
            type: string
          kind:
            $ref: "#/components/schemas/TemplateKind"
          meta:
            properties:
              name:
                type: string
            type: object
          spec:
            type: object
        type: object
      type: array
    TemplateApply:
      properties:
        actions:
          items:
            oneOf:
              - properties:
                  action:
                    enum:
                      - skipKind
                    type: string
                  properties:
                    properties:
                      kind:
                        $ref: "#/components/schemas/TemplateKind"
                    required:
                      - kind
                    type: object
                type: object
              - properties:
                  action:
                    enum:
                      - skipResource
                    type: string
                  properties:
                    properties:
                      kind:
                        $ref: "#/components/schemas/TemplateKind"
                      resourceTemplateName:
                        type: string
                    required:
                      - kind
                      - resourceTemplateName
                    type: object
                type: object
          type: array
        dryRun:
          type: boolean
        envRefs:
          additionalProperties:
            oneOf:
              - type: string
              - type: integer
              - type: number
              - type: boolean
          type: object
        orgID:
          type: string
        remotes:
          items:
            properties:
              contentType:
                type: string
              url:
                type: string
            required:
              - url
            type: object
          type: array
        secrets:
          additionalProperties:
            type: string
          type: object
        stackID:
          type: string
        template:
          properties:
            contentType:
              type: string
            contents:
              $ref: "#/components/schemas/Template"
            sources:
              items:
                type: string
              type: array
          type: object
        templates:
          items:
            properties:
              contentType:
                type: string
              contents:
                $ref: "#/components/schemas/Template"
              sources:
                items:
                  type: string
                type: array
            type: object
          type: array
      type: object
    TemplateChart:
      properties:
        height:
          type: integer
        properties:
          $ref: "#/components/schemas/ViewProperties"
        width:
          type: integer
        xPos:
          type: integer
        yPos:
          type: integer
      type: object
    TemplateEnvReferences:
      items:
        properties:
          defaultValue:
            description: Default value that will be provided for the reference when no value
              is provided
            nullable: true
            oneOf:
              - type: string
              - type: integer
              - type: number
              - type: boolean
          envRefKey:
            description: Key identified as environment reference and is the key identified
              in the template
            type: string
          resourceField:
            description: Field the environment reference corresponds too
            type: string
          value:
            description: Value provided to fulfill reference
            nullable: true
            oneOf:
              - type: string
              - type: integer
              - type: number
              - type: boolean
        required:
          - resourceField
          - envRefKey
        type: object
      type: array
    TemplateExportByID:
      properties:
        orgIDs:
          items:
            properties:
              orgID:
                type: string
              resourceFilters:
                properties:
                  byLabel:
                    items:
                      type: string
                    type: array
                  byResourceKind:
                    items:
                      $ref: "#/components/schemas/TemplateKind"
                    type: array
                type: object
            type: object
          type: array
        resources:
          properties:
            id:
              type: string
            kind:
              $ref: "#/components/schemas/TemplateKind"
            name:
              description: if defined with id, name is used for resource exported by id. if
                defined independently, resources strictly matching name are
                exported
              type: string
          required:
            - id
            - kind
          type: object
        stackID:
          type: string
      type: object
    TemplateExportByName:
      properties:
        orgIDs:
          items:
            properties:
              orgID:
                type: string
              resourceFilters:
                properties:
                  byLabel:
                    items:
                      type: string
                    type: array
                  byResourceKind:
                    items:
                      $ref: "#/components/schemas/TemplateKind"
                    type: array
                type: object
            type: object
          type: array
        resources:
          properties:
            kind:
              $ref: "#/components/schemas/TemplateKind"
            name:
              type: string
          required:
            - name
            - kind
          type: object
        stackID:
          type: string
      type: object
    TemplateKind:
      enum:
        - Bucket
        - Check
        - CheckDeadman
        - CheckThreshold
        - Dashboard
        - Label
        - NotificationEndpoint
        - NotificationEndpointHTTP
        - NotificationEndpointPagerDuty
        - NotificationEndpointSlack
        - NotificationRule
        - Task
        - Telegraf
        - Variable
      type: string
    TemplateSummary:
      properties:
        diff:
          properties:
            buckets:
              items:
                properties:
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  new:
                    properties:
                      description:
                        type: string
                      name:
                        type: string
                      retentionRules:
                        $ref: "#/components/schemas/RetentionRules"
                    type: object
                  old:
                    properties:
                      description:
                        type: string
                      name:
                        type: string
                      retentionRules:
                        $ref: "#/components/schemas/RetentionRules"
                    type: object
                  stateStatus:
                    type: string
                  templateMetaName:
                    type: string
                type: object
              type: array
            checks:
              items:
                properties:
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  new:
                    $ref: "#/components/schemas/CheckDiscriminator"
                  old:
                    $ref: "#/components/schemas/CheckDiscriminator"
                  stateStatus:
                    type: string
                  templateMetaName:
                    type: string
                type: object
              type: array
            dashboards:
              items:
                properties:
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  new:
                    properties:
                      charts:
                        items:
                          $ref: "#/components/schemas/TemplateChart"
                        type: array
                      description:
                        type: string
                      name:
                        type: string
                    type: object
                  old:
                    properties:
                      charts:
                        items:
                          $ref: "#/components/schemas/TemplateChart"
                        type: array
                      description:
                        type: string
                      name:
                        type: string
                    type: object
                  stateStatus:
                    type: string
                  templateMetaName:
                    type: string
                type: object
              type: array
            labelMappings:
              items:
                properties:
                  labelID:
                    type: string
                  labelName:
                    type: string
                  labelTemplateMetaName:
                    type: string
                  resourceID:
                    type: string
                  resourceName:
                    type: string
                  resourceTemplateMetaName:
                    type: string
                  resourceType:
                    type: string
                  status:
                    type: string
                type: object
              type: array
            labels:
              items:
                properties:
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  new:
                    properties:
                      color:
                        type: string
                      description:
                        type: string
                      name:
                        type: string
                    type: object
                  old:
                    properties:
                      color:
                        type: string
                      description:
                        type: string
                      name:
                        type: string
                    type: object
                  stateStatus:
                    type: string
                  templateMetaName:
                    type: string
                type: object
              type: array
            notificationEndpoints:
              items:
                properties:
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  new:
                    $ref: "#/components/schemas/NotificationEndpointDiscriminator"
                  old:
                    $ref: "#/components/schemas/NotificationEndpointDiscriminator"
                  stateStatus:
                    type: string
                  templateMetaName:
                    type: string
                type: object
              type: array
            notificationRules:
              items:
                properties:
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  new:
                    properties:
                      description:
                        type: string
                      endpointID:
                        type: string
                      endpointName:
                        type: string
                      endpointType:
                        type: string
                      every:
                        type: string
                      messageTemplate:
                        type: string
                      name:
                        type: string
                      offset:
                        type: string
                      status:
                        type: string
                      statusRules:
                        items:
                          properties:
                            currentLevel:
                              type: string
                            previousLevel:
                              type: string
                          type: object
                        type: array
                      tagRules:
                        items:
                          properties:
                            key:
                              type: string
                            operator:
                              type: string
                            value:
                              type: string
                          type: object
                        type: array
                    type: object
                  old:
                    properties:
                      description:
                        type: string
                      endpointID:
                        type: string
                      endpointName:
                        type: string
                      endpointType:
                        type: string
                      every:
                        type: string
                      messageTemplate:
                        type: string
                      name:
                        type: string
                      offset:
                        type: string
                      status:
                        type: string
                      statusRules:
                        items:
                          properties:
                            currentLevel:
                              type: string
                            previousLevel:
                              type: string
                          type: object
                        type: array
                      tagRules:
                        items:
                          properties:
                            key:
                              type: string
                            operator:
                              type: string
                            value:
                              type: string
                          type: object
                        type: array
                    type: object
                  stateStatus:
                    type: string
                  templateMetaName:
                    type: string
                type: object
              type: array
            tasks:
              items:
                properties:
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  new:
                    properties:
                      cron:
                        type: string
                      description:
                        type: string
                      every:
                        type: string
                      name:
                        type: string
                      offset:
                        type: string
                      query:
                        type: string
                      status:
                        type: string
                    type: object
                  old:
                    properties:
                      cron:
                        type: string
                      description:
                        type: string
                      every:
                        type: string
                      name:
                        type: string
                      offset:
                        type: string
                      query:
                        type: string
                      status:
                        type: string
                    type: object
                  stateStatus:
                    type: string
                  templateMetaName:
                    type: string
                type: object
              type: array
            telegrafConfigs:
              items:
                properties:
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  new:
                    $ref: "#/components/schemas/TelegrafRequest"
                  old:
                    $ref: "#/components/schemas/TelegrafRequest"
                  stateStatus:
                    type: string
                  templateMetaName:
                    type: string
                type: object
              type: array
            variables:
              items:
                properties:
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  new:
                    properties:
                      args:
                        $ref: "#/components/schemas/VariableProperties"
                      description:
                        type: string
                      name:
                        type: string
                    type: object
                  old:
                    properties:
                      args:
                        $ref: "#/components/schemas/VariableProperties"
                      description:
                        type: string
                      name:
                        type: string
                    type: object
                  stateStatus:
                    type: string
                  templateMetaName:
                    type: string
                type: object
              type: array
          type: object
        errors:
          items:
            properties:
              fields:
                items:
                  type: string
                type: array
              indexes:
                items:
                  type: integer
                type: array
              kind:
                $ref: "#/components/schemas/TemplateKind"
              reason:
                type: string
            type: object
          type: array
        sources:
          items:
            type: string
          type: array
        stackID:
          type: string
        summary:
          properties:
            buckets:
              items:
                properties:
                  description:
                    type: string
                  envReferences:
                    $ref: "#/components/schemas/TemplateEnvReferences"
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  labelAssociations:
                    items:
                      $ref: "#/components/schemas/TemplateSummaryLabel"
                    type: array
                  name:
                    type: string
                  orgID:
                    type: string
                  retentionPeriod:
                    type: integer
                  templateMetaName:
                    type: string
                type: object
              type: array
            checks:
              items:
                allOf:
                  - $ref: "#/components/schemas/CheckDiscriminator"
                  - properties:
                      envReferences:
                        $ref: "#/components/schemas/TemplateEnvReferences"
                      kind:
                        $ref: "#/components/schemas/TemplateKind"
                      labelAssociations:
                        items:
                          $ref: "#/components/schemas/TemplateSummaryLabel"
                        type: array
                      templateMetaName:
                        type: string
                    type: object
              type: array
            dashboards:
              items:
                properties:
                  charts:
                    items:
                      $ref: "#/components/schemas/TemplateChart"
                    type: array
                  description:
                    type: string
                  envReferences:
                    $ref: "#/components/schemas/TemplateEnvReferences"
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  labelAssociations:
                    items:
                      $ref: "#/components/schemas/TemplateSummaryLabel"
                    type: array
                  name:
                    type: string
                  orgID:
                    type: string
                  templateMetaName:
                    type: string
                type: object
              type: array
            labelMappings:
              items:
                properties:
                  labelID:
                    type: string
                  labelName:
                    type: string
                  labelTemplateMetaName:
                    type: string
                  resourceID:
                    type: string
                  resourceName:
                    type: string
                  resourceTemplateMetaName:
                    type: string
                  resourceType:
                    type: string
                  status:
                    type: string
                type: object
              type: array
            labels:
              items:
                $ref: "#/components/schemas/TemplateSummaryLabel"
              type: array
            missingEnvRefs:
              items:
                type: string
              type: array
            missingSecrets:
              items:
                type: string
              type: array
            notificationEndpoints:
              items:
                allOf:
                  - $ref: "#/components/schemas/NotificationEndpointDiscriminator"
                  - properties:
                      envReferences:
                        $ref: "#/components/schemas/TemplateEnvReferences"
                      kind:
                        $ref: "#/components/schemas/TemplateKind"
                      labelAssociations:
                        items:
                          $ref: "#/components/schemas/TemplateSummaryLabel"
                        type: array
                      templateMetaName:
                        type: string
                    type: object
              type: array
            notificationRules:
              items:
                properties:
                  description:
                    type: string
                  endpointID:
                    type: string
                  endpointTemplateMetaName:
                    type: string
                  endpointType:
                    type: string
                  envReferences:
                    $ref: "#/components/schemas/TemplateEnvReferences"
                  every:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  labelAssociations:
                    items:
                      $ref: "#/components/schemas/TemplateSummaryLabel"
                    type: array
                  messageTemplate:
                    type: string
                  name:
                    type: string
                  offset:
                    type: string
                  status:
                    type: string
                  statusRules:
                    items:
                      properties:
                        currentLevel:
                          type: string
                        previousLevel:
                          type: string
                      type: object
                    type: array
                  tagRules:
                    items:
                      properties:
                        key:
                          type: string
                        operator:
                          type: string
                        value:
                          type: string
                      type: object
                    type: array
                  templateMetaName:
                    type: string
                type: object
              type: array
            tasks:
              items:
                properties:
                  cron:
                    type: string
                  description:
                    type: string
                  envReferences:
                    $ref: "#/components/schemas/TemplateEnvReferences"
                  every:
                    type: string
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  name:
                    type: string
                  offset:
                    type: string
                  query:
                    type: string
                  status:
                    type: string
                  templateMetaName:
                    type: string
                type: object
              type: array
            telegrafConfigs:
              items:
                allOf:
                  - $ref: "#/components/schemas/TelegrafRequest"
                  - properties:
                      envReferences:
                        $ref: "#/components/schemas/TemplateEnvReferences"
                      kind:
                        $ref: "#/components/schemas/TemplateKind"
                      labelAssociations:
                        items:
                          $ref: "#/components/schemas/TemplateSummaryLabel"
                        type: array
                      templateMetaName:
                        type: string
                    type: object
              type: array
            variables:
              items:
                properties:
                  arguments:
                    $ref: "#/components/schemas/VariableProperties"
                  description:
                    type: string
                  envReferences:
                    $ref: "#/components/schemas/TemplateEnvReferences"
                  id:
                    type: string
                  kind:
                    $ref: "#/components/schemas/TemplateKind"
                  labelAssociations:
                    items:
                      $ref: "#/components/schemas/TemplateSummaryLabel"
                    type: array
                  name:
                    type: string
                  orgID:
                    type: string
                  templateMetaName:
                    type: string
                type: object
              type: array
          type: object
      type: object
    TemplateSummaryLabel:
      properties:
        envReferences:
          $ref: "#/components/schemas/TemplateEnvReferences"
        id:
          type: string
        kind:
          $ref: "#/components/schemas/TemplateKind"
        name:
          type: string
        orgID:
          type: string
        properties:
          properties:
            color:
              type: string
            description:
              type: string
          type: object
        templateMetaName:
          type: string
      type: object
    TestStatement:
      description: Declares a Flux test case
      properties:
        assignment:
          $ref: "#/components/schemas/VariableAssignment"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    Threshold:
      discriminator:
        mapping:
          greater: "#/components/schemas/GreaterThreshold"
          lesser: "#/components/schemas/LesserThreshold"
          range: "#/components/schemas/RangeThreshold"
        propertyName: type
      oneOf:
        - $ref: "#/components/schemas/GreaterThreshold"
        - $ref: "#/components/schemas/LesserThreshold"
        - $ref: "#/components/schemas/RangeThreshold"
    ThresholdBase:
      properties:
        allValues:
          description: If true, only alert if all values meet threshold.
          type: boolean
        level:
          $ref: "#/components/schemas/CheckStatusLevel"
    ThresholdCheck:
      allOf:
        - $ref: "#/components/schemas/CheckBase"
        - properties:
            every:
              description: Check repetition interval.
              type: string
            offset:
              description: Duration to delay after the schedule, before executing check.
              type: string
            statusMessageTemplate:
              description: The template used to generate and write a status message.
              type: string
            tags:
              description: List of tags to write to each status.
              items:
                properties:
                  key:
                    type: string
                  value:
                    type: string
                type: object
              type: array
            thresholds:
              items:
                $ref: "#/components/schemas/Threshold"
              type: array
            type:
              enum:
                - threshold
              type: string
          required:
            - type
          type: object
    UnaryExpression:
      description: Uses operators to act on a single operand in an expression
      properties:
        argument:
          $ref: "#/components/schemas/Expression"
        operator:
          type: string
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    UnsignedIntegerLiteral:
      description: Represents integer numbers
      properties:
        type:
          $ref: "#/components/schemas/NodeType"
        value:
          type: string
      type: object
    User:
      properties:
        id:
          readOnly: true
          type: string
        name:
          type: string
        oauthID:
          type: string
        status:
          default: active
          description: If inactive the user is inactive.
          enum:
            - active
            - inactive
          type: string
      required:
        - name
    UserResponse:
      properties:
        id:
          readOnly: true
          type: string
        links:
          example:
            self: /api/v2/users/1
          properties:
            self:
              format: uri
              type: string
          readOnly: true
          type: object
        name:
          type: string
        oauthID:
          type: string
        status:
          default: active
          description: If inactive the user is inactive.
          enum:
            - active
            - inactive
          type: string
      required:
        - name
    Users:
      properties:
        links:
          properties:
            self:
              format: uri
              type: string
          type: object
        users:
          items:
            $ref: "#/components/schemas/UserResponse"
          type: array
      type: object
    Variable:
      properties:
        arguments:
          $ref: "#/components/schemas/VariableProperties"
        createdAt:
          format: date-time
          type: string
        description:
          type: string
        id:
          readOnly: true
          type: string
        labels:
          $ref: "#/components/schemas/Labels"
        links:
          properties:
            labels:
              format: uri
              type: string
            org:
              format: uri
              type: string
            self:
              format: uri
              type: string
          readOnly: true
          type: object
        name:
          type: string
        orgID:
          type: string
        selected:
          items:
            type: string
          type: array
        updatedAt:
          format: date-time
          type: string
      required:
        - name
        - orgID
        - arguments
      type: object
    VariableAssignment:
      description: Represents the declaration of a variable
      properties:
        id:
          $ref: "#/components/schemas/Identifier"
        init:
          $ref: "#/components/schemas/Expression"
        type:
          $ref: "#/components/schemas/NodeType"
      type: object
    VariableProperties:
      oneOf:
        - $ref: "#/components/schemas/QueryVariableProperties"
        - $ref: "#/components/schemas/ConstantVariableProperties"
        - $ref: "#/components/schemas/MapVariableProperties"
      type: object
    Variables:
      example:
        variables:
          - arguments:
              type: constant
              values:
                - howdy
                - hello
                - hi
                - yo
                - oy
            id: "1221432"
            name: ":ok:"
            selected:
              - hello
          - arguments:
              type: map
              values:
                a: fdjaklfdjkldsfjlkjdsa
                b: dfaksjfkljekfajekdljfas
                c: fdjksajfdkfeawfeea
            id: "1221432"
            name: ":ok:"
            selected:
              - c
          - arguments:
              language: flux
              query: 'from(bucket: "foo") |&gt; showMeasurements()'
              type: query
            id: "1221432"
            name: ":ok:"
            selected:
              - host
      properties:
        variables:
          items:
            $ref: "#/components/schemas/Variable"
          type: array
      type: object
    View:
      properties:
        id:
          readOnly: true
          type: string
        links:
          properties:
            self:
              type: string
          readOnly: true
          type: object
        name:
          type: string
        properties:
          $ref: "#/components/schemas/ViewProperties"
      required:
        - name
        - properties
    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"
        - $ref: "#/components/schemas/MosaicViewProperties"
        - $ref: "#/components/schemas/BandViewProperties"
        - $ref: "#/components/schemas/GeoViewProperties"
    Views:
      properties:
        links:
          properties:
            self:
              type: string
          type: object
        views:
          items:
            $ref: "#/components/schemas/View"
          type: array
      type: object
    WritePrecision:
      enum:
        - ms
        - s
        - us
        - ns
      type: string
    XYGeom:
      enum:
        - line
        - step
        - stacked
        - bar
        - monotoneX
      type: string
    XYViewProperties:
      properties:
        axes:
          $ref: "#/components/schemas/Axes"
        colors:
          description: Colors define color encoding of data into a visualization
          items:
            $ref: "#/components/schemas/DashboardColor"
          type: array
        generateXAxisTicks:
          items:
            type: string
          type: array
        generateYAxisTicks:
          items:
            type: string
          type: array
        geom:
          $ref: "#/components/schemas/XYGeom"
        hoverDimension:
          enum:
            - auto
            - x
            - y
            - xy
          type: string
        legendColorizeRows:
          type: boolean
        legendHide:
          type: boolean
        legendOpacity:
          format: float
          type: number
        legendOrientationThreshold:
          type: integer
        note:
          type: string
        position:
          enum:
            - overlaid
            - stacked
          type: string
        queries:
          items:
            $ref: "#/components/schemas/DashboardQuery"
          type: array
        shadeBelow:
          type: boolean
        shape:
          enum:
            - chronograf-v2
          type: string
        showNoteWhenEmpty:
          description: If true, will display note when empty
          type: boolean
        staticLegend:
          $ref: "#/components/schemas/StaticLegend"
        timeFormat:
          type: string
        type:
          enum:
            - xy
          type: string
        xColumn:
          type: string
        xTickStart:
          format: float
          type: number
        xTickStep:
          format: float
          type: number
        xTotalTicks:
          type: integer
        yColumn:
          type: string
        yTickStart:
          format: float
          type: number
        yTickStep:
          format: float
          type: number
        yTotalTicks:
          type: integer
      required:
        - type
        - geom
        - queries
        - shape
        - axes
        - colors
        - note
        - showNoteWhenEmpty
        - position
      type: object
  securitySchemes:
    BasicAuth:
      scheme: basic
      type: http
