From 4de7de611eb735ed17b7a6141dcc794d1ef4bb37 Mon Sep 17 00:00:00 2001 From: Scott Anderson Date: Wed, 28 Apr 2021 09:10:30 -0600 Subject: [PATCH] InfluxDB 2.0.5 (#2450) * Add `--compression` flag to `influx write` (#2243) Add `--compression` flag to `influx write` Closes #2240. Co-authored-by: Scott Anderson * Changes to /debug endpoints for InfluxDB 2.0.5 (#2246) - Add --pprof-disabled influxd flag - Add pprof-disabled to influxd config-options Closes #2239. Co-authored-by: Scott Anderson * deprecated influx transpile command, closes #2266 * Update content/influxdb/v2.0/reference/cli/influx/transpile/_index.md Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * updated influx transpile warning from deprecated to removed * Deprecated 'influx transpile' command (#2304) * deprecated influx transpile command, closes #2266 * Update content/influxdb/v2.0/reference/cli/influx/transpile/_index.md Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * added new and missing influxd config options, closes #2297, closes #2293 (#2303) * Add 'influx task retry-failed' command (#2334) * added influx task retry-failed command * add new task retry-failed flags, updated task task-based content, closes #2095 * Apply suggestions from code review Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com> * address PR feedback for task retry-failed * Apply suggestions from code review Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * updated task retry-failed to address PR feedback Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com> Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * updated task-based failed task docs in cloud * add profilers flag to influx query, closes #2338, closes #2327 (#2342) * export lp to stdout, closes #2337 (#2343) * export lp to stdout, closes #2337 * adjust output-path desc, updated command examples * Clarify user migration in 1.x to 2.0 automated upgrade process (#2344) * clarify user migration in upgrade process, closes #2336 * updated user migration content to address PR feedback * updated migration doc for PR feedback * Apply suggestions from code review Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * Updated restore docs (#2352) * udpated restore docs, closes #2333, closes #2335 * Apply suggestions from code review Co-authored-by: Daniel Moran * Apply suggestions from code review Co-authored-by: Daniel Moran * describe full restore failure * Apply suggestions from code review Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * updated restore doc to address PR feedback Co-authored-by: Daniel Moran Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * Shard management (#2322) * shard reference content * added shard group diagram * finished reference info for shards * add shard group duration config flag and examples, closes #2283 * Apply suggestions from code review Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> Co-authored-by: Edd Robinson * addressed PR feedback for shard docs * more updates to shard docs to address PR feedback * Apply suggestions from code review Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * minor updates to shards doc in 2.0 * updated shard state content * Apply suggestions from code review Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * Update content/influxdb/v2.0/reference/internals/shards.md * updated shard group definition in glossary Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> Co-authored-by: Edd Robinson * removed unnecessary period from influx transpile * Upgrade from OSS 2.x to Cloud (#2420) * WIP v2 to cloud migration * updated config create example in grafana doc, resolves #2415 * draft for v2 to cloud migration * Apply suggestions from code review Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * minor update to cloud upgrade doc * updated v2 to cloud upgrade guide to address PR feedback * updated 1x compatability api docs for cloud * updated write examples in cloud upgrade, added intro sentence to cloud upgrade landing * Add file system layout reference doc (#2423) * add file system layout reference doc, closes #2276 * added filesystem-diagram shortcode to contributing * Apply suggestions from code review Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com> * updates to filesystem layout doc * minor update to filesystem layout doc * fixed typo in v2 to cloud migration * added newline to filesystem diagram shortcode * minor updates to fs layout doc * added windows file system layout * updated fs layout doc to address PR feedback Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com> * updates to address PR feedback * Upgrade from 1.x to Cloud (#2424) * add v1 to cloud upgrade guide with migrate CQs doc * Apply suggestions from code review Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com> * udpated PATH verbiage in v1 to cloud migration doc * Apply suggestions from code review Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * added caption shortcode, address PR feedback for v1 to cloud migration Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com> Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * replaced arbitrary username in cloud v1 compat api doc * renamed v2 to upgrade doc * removed old from-v2 cloud migration doc Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com> * moved diagram css * minor update to heading in fs layout doc * updated section heading in fs layout doc * updated upgrage notification and migration guides * general cleanup of page titles and descriptions * Update query optimizations guide (#2441) * updated pushdowns list, closes #2439, closes #1042 * added profiler information to optimize queries doc * removed window as a heavy function * minor change to optimize queries * update usage of the word manipulate to operate * add information about dynamically defining filter values, closes #2150 * add information about set vs map to query optimizations, closes #2101 * Apply suggestions from code review Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * updated pushdowns table * updated table formatting Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * Add windows install instructions (#2430) * add windows install instructions * removed unnecessary newlines * removed notes and newlins from windows install instructions * added known issues to windows warning * updated windows install instructions * updated influxdb version in 1.x and cloud docs * InfluxDB 2.0.5 swagger (#2448) * updated swagger files to use influxdata/openapi, added helper script * fixed typo, added newline * InfluxDB 2.0.5 release notes (#2426) * InfluxDB 2.0.5 release notes * Apply suggestions from code review Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * updated influxdb 2.0.5 release notes to address PR feedback * last minute additiosn to 2.0.5 release notes Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * InfluxDB 2.0.5 additions (#2449) * InfluxDB 2.0.5 release notes * Apply suggestions from code review Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * updated influxdb 2.0.5 release notes to address PR feedback * last minute additiosn to 2.0.5 release notes * last minute updates to oss, closes #2306, closes 1825 * deduped viz type content * added missing viz options Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> * updated v1compat swagger * minor updates to influxdb 2.0.5 release notes Co-authored-by: pierwill <19642016+pierwill@users.noreply.github.com> Co-authored-by: kelseiv <47797004+kelseiv@users.noreply.github.com> Co-authored-by: Daniel Moran Co-authored-by: Edd Robinson --- CONTRIBUTING.md | 27 + api-docs/cloud/swagger.yml | 5672 ++++++++-------- api-docs/cloud/swaggerV1Compat.yml | 4 +- api-docs/getswagger.sh | 55 + api-docs/v2.0/swagger.yml | 5757 +++++++++-------- api-docs/v2.0/swaggerV1Compat.yml | 4 +- assets/styles/layouts/_article.scss | 2 + assets/styles/layouts/article/_blocks.scss | 2 + assets/styles/layouts/article/_captions.scss | 15 + .../layouts/article/_html-diagrams.scss | 129 + .../layouts/article/_tabbed-content.scss | 2 +- assets/styles/themes/_theme-dark.scss | 3 + assets/styles/themes/_theme-light.scss | 2 + content/example.md | 4 +- content/influxdb/cloud/get-started.md | 14 +- .../influxdb/cloud/influxdb-templates/use.md | 8 +- .../notification-endpoints/create.md | 6 +- .../cloud/organizations/buckets/_index.md | 3 +- .../organizations/buckets/create-bucket.md | 4 +- .../organizations/buckets/update-bucket.md | 14 +- .../common-tasks/downsample-data.md | 6 +- .../process-data/manage-tasks/run-task.md | 30 +- .../manage-tasks/task-run-history.md | 34 +- .../flux/custom-functions/_index.md | 2 +- .../cloud/query-data/optimize-queries.md | 67 +- .../cloud/reference/api/influxdb-1x/_index.md | 55 +- .../reference/cli/influx/task/retry-failed.md | 11 + .../reference/cli/influx/transpile/_index.md | 6 - .../flux/stdlib/experimental/geo/_index.md | 2 +- .../influxdb/cloud/security/tokens/_index.md | 18 +- content/influxdb/cloud/tools/grafana.md | 4 +- content/influxdb/cloud/upgrade/_index.md | 13 + .../cloud/upgrade/v1-to-cloud/_index.md | 268 + .../cloud/upgrade/v1-to-cloud/migrate-cqs.md | 370 ++ content/influxdb/cloud/upgrade/v2-to-cloud.md | 368 ++ .../dashboards/control-dashboard.md | 5 + .../visualization-types/band.md | 4 +- .../visualization-types/gauge.md | 57 +- .../visualization-types/graph-single-stat.md | 80 +- .../visualization-types/graph.md | 62 +- .../visualization-types/heatmap.md | 102 +- .../visualization-types/histogram.md | 69 +- .../visualization-types/mosaic.md | 72 +- .../visualization-types/scatter.md | 97 +- .../visualization-types/single-stat.md | 55 +- .../visualization-types/table.md | 66 +- .../cloud/write-data/bulk-ingest-cloud.md | 11 +- .../write-data/developer-tools/_index.md | 4 +- .../cloud/write-data/developer-tools/api.md | 6 +- .../developer-tools/client-libraries.md | 6 +- .../write-data/developer-tools/influx-cli.md | 6 +- .../developer-tools/third-party-solutions.md | 4 +- .../cloud/write-data/no-code/_index.md | 6 +- .../cloud/write-data/no-code/third-party.md | 6 +- .../write-data/no-code/use-telegraf/_index.md | 2 +- .../v1.7/flux/guides/optimize-queries.md | 2 +- .../v1.8/flux/guides/optimize-queries.md | 2 +- content/influxdb/v1.8/introduction/install.md | 2 +- .../influxdb/v2.0/backup-restore/restore.md | 121 +- content/influxdb/v2.0/get-started.md | 127 +- .../influxdb/v2.0/influxdb-templates/use.md | 8 +- .../notification-endpoints/create.md | 10 +- .../v2.0/organizations/buckets/_index.md | 3 +- .../organizations/buckets/create-bucket.md | 4 +- .../organizations/buckets/update-bucket.md | 10 +- .../common-tasks/downsample-data.md | 7 +- .../process-data/manage-tasks/run-task.md | 24 +- .../manage-tasks/task-run-history.md | 23 +- .../flux/custom-functions/_index.md | 2 +- .../v2.0/query-data/optimize-queries.md | 153 +- .../v2.0/reference/api/influxdb-1x/_index.md | 4 +- .../v2.0/reference/cli/influx/_index.md | 1 - .../reference/cli/influx/backup/_index.md | 1 + .../reference/cli/influx/bucket/create.md | 44 +- .../reference/cli/influx/bucket/update.md | 50 +- .../v2.0/reference/cli/influx/export/all.md | 6 +- .../v2.0/reference/cli/influx/export/stack.md | 6 +- .../v2.0/reference/cli/influx/query/_index.md | 11 + .../reference/cli/influx/restore/index.md | 36 +- .../v2.0/reference/cli/influx/setup/_index.md | 2 +- .../v2.0/reference/cli/influx/task/_index.md | 17 +- .../reference/cli/influx/task/retry-failed.md | 91 + .../reference/cli/influx/transpile/_index.md | 17 +- .../v2.0/reference/cli/influx/write/_index.md | 78 +- .../cli/influxd/inspect/export-lp.md | 88 +- .../influxdb/v2.0/reference/config-options.md | 456 +- .../flux/stdlib/experimental/geo/_index.md | 2 +- .../reference/flux/stdlib/profiler/_index.md | 2 +- content/influxdb/v2.0/reference/glossary.md | 82 +- .../reference/internals/file-system-layout.md | 246 + .../v2.0/reference/internals/shards.md | 145 + .../reference/internals/storage-engine.md | 2 +- .../reference/internals/system-buckets.md | 2 +- .../v2.0/reference/release-notes/influxdb.md | 94 +- .../influxdb/v2.0/security/tokens/_index.md | 12 +- .../v2.0/security/tokens/create-token.md | 2 +- .../upgrade/v1-to-v2/automatic-upgrade.md | 43 +- .../v2.0/upgrade/v1-to-v2/manual-upgrade.md | 8 +- .../v2.0/upgrade/v1-to-v2/migrate-cqs.md | 4 +- .../dashboards/control-dashboard.md | 5 + .../visualization-types/band.md | 12 +- .../visualization-types/gauge.md | 2 +- .../visualization-types/graph-single-stat.md | 21 + .../visualization-types/graph.md | 20 + .../visualization-types/heatmap.md | 23 +- .../visualization-types/histogram.md | 9 +- .../visualization-types/mosaic.md | 3 +- .../visualization-types/scatter.md | 26 +- .../visualization-types/single-stat.md | 2 +- .../visualization-types/table.md | 17 +- .../v2.0/write-data/developer-tools/_index.md | 4 +- .../v2.0/write-data/developer-tools/api.md | 6 +- .../developer-tools/client-libraries.md | 6 +- .../write-data/developer-tools/influx-cli.md | 6 +- .../developer-tools/third-party-solutions.md | 4 +- .../v2.0/write-data/no-code/_index.md | 6 +- .../v2.0/write-data/no-code/third-party.md | 6 +- .../write-data/no-code/use-telegraf/_index.md | 2 +- data/notifications.yaml | 11 +- layouts/shortcodes/caption.html | 2 + layouts/shortcodes/cli/influxd-flags.md | 13 +- layouts/shortcodes/filesystem-diagram.html | 4 + layouts/shortcodes/html-diagram/shards.html | 33 + 123 files changed, 9443 insertions(+), 6551 deletions(-) create mode 100644 api-docs/getswagger.sh create mode 100644 assets/styles/layouts/article/_captions.scss create mode 100644 assets/styles/layouts/article/_html-diagrams.scss create mode 100644 content/influxdb/cloud/reference/cli/influx/task/retry-failed.md create mode 100644 content/influxdb/cloud/upgrade/_index.md create mode 100644 content/influxdb/cloud/upgrade/v1-to-cloud/_index.md create mode 100644 content/influxdb/cloud/upgrade/v1-to-cloud/migrate-cqs.md create mode 100644 content/influxdb/cloud/upgrade/v2-to-cloud.md create mode 100644 content/influxdb/v2.0/reference/cli/influx/task/retry-failed.md create mode 100644 content/influxdb/v2.0/reference/internals/file-system-layout.md create mode 100644 content/influxdb/v2.0/reference/internals/shards.md create mode 100644 layouts/shortcodes/caption.html create mode 100644 layouts/shortcodes/filesystem-diagram.html create mode 100644 layouts/shortcodes/html-diagram/shards.html diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 910776426..1acb7308d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -477,6 +477,22 @@ flowchart TB {{< /diagram >}} ``` +### File system diagrams +Use the `{{< filesystem-diagram >}}` shortcode to create a styled file system +diagram using a Markdown unordered list. + +##### Example filestsytem diagram shortcode +```md +{{< filesystem-diagram >}} +- Dir1/ +- Dir2/ + - ChildDir/ + - Child + - Child +- Dir3/ +{{< /filesystem-diagram >}} +``` + ### High-resolution images In many cases, screenshots included in the docs are taken from high-resolution (retina) screens. Because of this, the actual pixel dimension is 2x larger than it needs to be and is rendered 2x bigger than it should be. @@ -540,6 +556,17 @@ Markdown content associated with label 2. {{< /expand-wrapper >}} ``` +### Captions +Use the `{{% caption %}}` shortcode to add captions to images and code blocks. +Captions are styled with a smaller font size, italic text, slight transparency, +and appear directly under the previous image or code block. + +```md +{{% caption %}} +Markdown content for the caption. +{{% /caption %}} +``` + ### Generate a list of children articles Section landing pages often contain just a list of articles with links and descriptions for each. This can be cumbersome to maintain as content is added. diff --git a/api-docs/cloud/swagger.yml b/api-docs/cloud/swagger.yml index f359aa1fe..ba40f76d9 100644 --- a/api-docs/cloud/swagger.yml +++ b/api-docs/cloud/swagger.yml @@ -1,7 +1,7 @@ -openapi: "3.0.0" +openapi: 3.0.0 info: - title: Influx API Service - version: 0.1.0 + title: Influx Cloud API Service + version: 2.0.1 servers: - url: /api/v2 paths: @@ -12,142 +12,69 @@ paths: security: - BasicAuth: [] parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' responses: - "204": + '204': description: Successfully authenticated - "401": + '401': description: Unauthorized access content: application/json: schema: - $ref: "#/components/schemas/Error" - "403": + $ref: '#/components/schemas/Error' + '403': description: user account is disabled content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unsuccessful authentication content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /signout: post: operationId: PostSignout summary: Expire the current session parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' responses: - "204": + '204': description: Session successfully expired - "401": + '401': description: Unauthorized access content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unsuccessful session expiry content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /: get: operationId: GetRoutes summary: Map of all top level routes available parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' responses: default: description: All routes content: application/json: schema: - $ref: "#/components/schemas/Routes" - /setup: - get: - operationId: GetSetup - tags: - - Setup - summary: Check if database has default user, org, bucket - description: Returns `true` if no default user, organization, or bucket has been created. - parameters: - - $ref: "#/components/parameters/TraceSpan" - responses: - "200": - description: allowed true or false - content: - application/json: - schema: - $ref: "#/components/schemas/IsOnboarding" - post: - operationId: PostSetup - tags: - - Setup - summary: Set up initial user, org and bucket - description: Post an onboarding request to set up initial user, org and bucket. - parameters: - - $ref: "#/components/parameters/TraceSpan" - requestBody: - description: Source to create - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/OnboardingRequest" - responses: - "201": - description: Created default user, bucket, org - content: - application/json: - schema: - $ref: "#/components/schemas/OnboardingResponse" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - /setup/user: - post: - operationId: PostSetupUser - tags: - - Setup - summary: Set up a new user, org and bucket - description: Post an onboarding request to set up a new user, org and bucket. - parameters: - - $ref: "#/components/parameters/TraceSpan" - requestBody: - description: Source to create - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/OnboardingRequest" - responses: - "201": - description: Created default user, bucket, org - content: - application/json: - schema: - $ref: "#/components/schemas/OnboardingResponse" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Routes' /documents/templates: get: operationId: GetDocumentsTemplates tags: - Templates parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: org description: Specifies the name of the organization of the template. @@ -159,52 +86,52 @@ paths: schema: type: string responses: - "200": + '200': description: A list of template documents content: application/json: schema: - $ref: "#/components/schemas/Documents" + $ref: '#/components/schemas/Documents' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDocumentsTemplates tags: - Templates summary: Create a template parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Template that will be created required: true content: application/json: schema: - $ref: "#/components/schemas/DocumentCreate" + $ref: '#/components/schemas/DocumentCreate' responses: - "201": + '201': description: Template created content: application/json: schema: - $ref: "#/components/schemas/Document" + $ref: '#/components/schemas/Document' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/documents/templates/{templateID}": + $ref: '#/components/schemas/Error' + '/documents/templates/{templateID}': get: operationId: GetDocumentsTemplatesID tags: - Templates parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: templateID schema: @@ -212,24 +139,24 @@ paths: required: true description: The template ID. responses: - "200": + '200': description: The template requested content: application/json: schema: - $ref: "#/components/schemas/Document" + $ref: '#/components/schemas/Document' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' put: operationId: PutDocumentsTemplatesID tags: - Templates parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: templateID schema: @@ -242,27 +169,27 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/DocumentUpdate" + $ref: '#/components/schemas/DocumentUpdate' responses: - "200": + '200': description: The newly updated template content: application/json: schema: - $ref: "#/components/schemas/Document" + $ref: '#/components/schemas/Document' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteDocumentsTemplatesID tags: - Templates summary: Delete a template parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: templateID schema: @@ -270,22 +197,22 @@ paths: required: true description: The template ID. responses: - "204": + '204': description: Delete has been accepted default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/documents/templates/{templateID}/labels": + $ref: '#/components/schemas/Error' + '/documents/templates/{templateID}/labels': get: operationId: GetDocumentsTemplatesIDLabels tags: - Templates summary: List all labels for a template parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: templateID schema: @@ -293,25 +220,25 @@ paths: required: true description: The template ID. responses: - "200": + '200': description: A list of all labels for a template content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDocumentsTemplatesIDLabels tags: - Templates summary: Add a label to a template parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: templateID schema: @@ -324,28 +251,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The label added to the template content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/documents/templates/{templateID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/documents/templates/{templateID}/labels/{labelID}': delete: operationId: DeleteDocumentsTemplatesIDLabelsID tags: - Templates summary: Delete a label from a template parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: templateID schema: @@ -359,20 +286,20 @@ paths: required: true description: The label ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Template not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /dbrps: get: operationId: GetDBRPs @@ -380,7 +307,7 @@ paths: - DBRPs summary: List all database retention policy mappings parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: orgID required: true @@ -413,65 +340,65 @@ paths: schema: type: string responses: - "200": + '200': description: A list of all database retention policy mappings content: application/json: schema: - $ref: "#/components/schemas/DBRPs" - "400": + $ref: '#/components/schemas/DBRPs' + '400': description: if any of the parameter passed is invalid content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDBRP tags: - DBRPs summary: Add a database retention policy mapping parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: The database retention policy mapping to add required: true content: application/json: schema: - $ref: "#/components/schemas/DBRP" + $ref: '#/components/schemas/DBRP' responses: - "201": + '201': description: Database retention policy mapping created content: application/json: schema: - $ref: "#/components/schemas/DBRP" - "400": + $ref: '#/components/schemas/DBRP' + '400': description: if any of the IDs in the mapping is invalid content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dbrps/{dbrpID}": + $ref: '#/components/schemas/Error' + '/dbrps/{dbrpID}': get: operationId: GetDBRPsID tags: - DBRPs summary: Retrieve a database retention policy mapping parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: orgID required: true @@ -485,24 +412,24 @@ paths: required: true description: The database retention policy mapping ID responses: - "200": + '200': description: The database retention policy requested content: application/json: schema: - $ref: "#/components/schemas/DBRP" - "400": + $ref: '#/components/schemas/DBRP' + '400': description: if any of the IDs passed is invalid content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchDBRPID tags: @@ -514,9 +441,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/DBRPUpdate" + $ref: '#/components/schemas/DBRPUpdate' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: orgID required: true @@ -530,37 +457,37 @@ paths: required: true description: The database retention policy mapping. responses: - "200": + '200': description: An updated mapping content: application/json: schema: - $ref: "#/components/schemas/DBRP" - "404": - description: The mapping was not found - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - "400": + $ref: '#/components/schemas/DBRP' + '400': description: if any of the IDs passed is invalid content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' + '404': + description: The mapping was not found + content: + application/json: + schema: + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteDBRPID tags: - DBRPs summary: Delete a database retention policy parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: orgID required: true @@ -574,103 +501,103 @@ paths: required: true description: The database retention policy mapping responses: - "204": + '204': description: Delete has been accepted - "400": + '400': description: if any of the IDs passed is invalid content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /telegraf/plugins: get: operationId: GetTelegrafPlugins parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: type description: The type of plugin desired. schema: type: string responses: - "200": + '200': description: A list of Telegraf plugins. content: application/json: schema: - $ref: "#/components/schemas/TelegrafPlugins" + $ref: '#/components/schemas/TelegrafPlugins' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /telegrafs: get: operationId: GetTelegrafs tags: - Telegrafs parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: orgID description: The organization ID the Telegraf config belongs to. schema: type: string responses: - "200": + '200': description: A list of Telegraf configs content: application/json: schema: - $ref: "#/components/schemas/Telegrafs" + $ref: '#/components/schemas/Telegrafs' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTelegrafs tags: - Telegrafs summary: Create a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Telegraf config to create required: true content: application/json: schema: - $ref: "#/components/schemas/TelegrafRequest" + $ref: '#/components/schemas/TelegrafRequest' responses: - "201": + '201': description: Telegraf config created content: application/json: schema: - $ref: "#/components/schemas/Telegraf" + $ref: '#/components/schemas/Telegraf' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}': get: operationId: GetTelegrafsID tags: - Telegrafs summary: Retrieve a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -688,18 +615,22 @@ paths: - application/json - application/octet-stream responses: - "200": + '200': description: Telegraf config details content: application/toml: - example: "[agent]\ninterval = \"10s\"" + example: |- + [agent] + interval = "10s" schema: type: string application/json: schema: - $ref: "#/components/schemas/Telegraf" + $ref: '#/components/schemas/Telegraf' application/octet-stream: - example: "[agent]\ninterval = \"10s\"" + example: |- + [agent] + interval = "10s" schema: type: string default: @@ -707,14 +638,14 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' put: operationId: PutTelegrafsID tags: - Telegrafs summary: Update a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -727,27 +658,27 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/TelegrafRequest" + $ref: '#/components/schemas/TelegrafRequest' responses: - "200": + '200': description: An updated Telegraf config content: application/json: schema: - $ref: "#/components/schemas/Telegraf" + $ref: '#/components/schemas/Telegraf' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteTelegrafsID tags: - Telegrafs summary: Delete a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -755,22 +686,22 @@ paths: required: true description: The Telegraf config ID. responses: - "204": + '204': description: Delete has been accepted default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}/labels": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}/labels': get: operationId: GetTelegrafsIDLabels tags: - Telegrafs summary: List all labels for a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -778,25 +709,25 @@ paths: required: true description: The Telegraf config ID. responses: - "200": + '200': description: A list of all labels for a Telegraf config content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTelegrafsIDLabels tags: - Telegrafs summary: Add a label to a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -809,28 +740,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The label added to the Telegraf config content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}/labels/{labelID}': delete: operationId: DeleteTelegrafsIDLabelsID tags: - Telegrafs summary: Delete a label from a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -844,21 +775,21 @@ paths: required: true description: The label ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Telegraf config not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}/members": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}/members': get: operationId: GetTelegrafsIDMembers tags: @@ -866,7 +797,7 @@ paths: - Telegrafs summary: List all users with member privileges for a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -874,18 +805,18 @@ paths: required: true description: The Telegraf config ID. responses: - "200": + '200': description: A list of Telegraf config members content: application/json: schema: - $ref: "#/components/schemas/ResourceMembers" + $ref: '#/components/schemas/ResourceMembers' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTelegrafsIDMembers tags: @@ -893,7 +824,7 @@ paths: - Telegrafs summary: Add a member to a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -906,21 +837,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Member added to Telegraf config content: application/json: schema: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}/members/{userID}": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}/members/{userID}': delete: operationId: DeleteTelegrafsIDMembersID tags: @@ -928,7 +859,7 @@ paths: - Telegrafs summary: Remove a member from a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -942,15 +873,15 @@ paths: required: true description: The Telegraf config ID. responses: - "204": + '204': description: Member removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}/owners": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}/owners': get: operationId: GetTelegrafsIDOwners tags: @@ -958,7 +889,7 @@ paths: - Telegrafs summary: List all owners of a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -966,18 +897,18 @@ paths: required: true description: The Telegraf config ID. responses: - "200": + '200': description: A list of Telegraf config owners content: application/json: schema: - $ref: "#/components/schemas/ResourceOwners" + $ref: '#/components/schemas/ResourceOwners' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTelegrafsIDOwners tags: @@ -985,7 +916,7 @@ paths: - Telegrafs summary: Add an owner to a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -998,21 +929,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Telegraf config owner added content: application/json: schema: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}/owners/{userID}": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}/owners/{userID}': delete: operationId: DeleteTelegrafsIDOwnersID tags: @@ -1020,7 +951,7 @@ paths: - Telegrafs summary: Remove an owner from a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -1034,14 +965,14 @@ paths: required: true description: The Telegraf config ID. responses: - "204": + '204': description: Owner removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /scrapers: get: operationId: GetScrapers @@ -1049,7 +980,7 @@ paths: - ScraperTargets summary: Get all scraper targets parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: name description: Specifies the name of the scraper target. @@ -1057,7 +988,7 @@ paths: type: string - in: query name: id - description: List of scraper target IDs to return. If both `id` and `owner` are specified, only `id` is used. + description: 'List of scraper target IDs to return. If both `id` and `owner` are specified, only `id` is used.' schema: type: array items: @@ -1073,47 +1004,47 @@ paths: schema: type: string responses: - "200": + '200': description: All scraper targets content: application/json: schema: - $ref: "#/components/schemas/ScraperTargetResponses" + $ref: '#/components/schemas/ScraperTargetResponses' post: operationId: PostScrapers summary: Create a scraper target tags: - ScraperTargets parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Scraper target to create required: true content: application/json: schema: - $ref: "#/components/schemas/ScraperTargetRequest" + $ref: '#/components/schemas/ScraperTargetRequest' responses: - "201": + '201': description: Scraper target created content: application/json: schema: - $ref: "#/components/schemas/ScraperTargetResponse" + $ref: '#/components/schemas/ScraperTargetResponse' default: description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}': get: operationId: GetScrapersID tags: - ScraperTargets summary: Get a scraper target by ID parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID required: true @@ -1121,25 +1052,25 @@ paths: type: string description: The scraper target ID. responses: - "200": + '200': description: Scraper target updated content: application/json: schema: - $ref: "#/components/schemas/ScraperTargetResponse" + $ref: '#/components/schemas/ScraperTargetResponse' default: description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteScrapersID tags: - ScraperTargets summary: Delete a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID required: true @@ -1147,21 +1078,21 @@ paths: type: string description: The scraper target ID. responses: - "204": + '204': description: Scraper target deleted default: description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchScrapersID summary: Update a scraper target tags: - ScraperTargets parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID required: true @@ -1174,28 +1105,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/ScraperTargetRequest" + $ref: '#/components/schemas/ScraperTargetRequest' responses: - "200": + '200': description: Scraper target updated content: application/json: schema: - $ref: "#/components/schemas/ScraperTargetResponse" + $ref: '#/components/schemas/ScraperTargetResponse' default: description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}/labels": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}/labels': get: operationId: GetScrapersIDLabels tags: - ScraperTargets summary: List all labels for a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1203,25 +1134,25 @@ paths: required: true description: The scraper target ID. responses: - "200": + '200': description: A list of all labels for a scraper target content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostScrapersIDLabels tags: - ScraperTargets summary: Add a label to a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1234,28 +1165,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The newly added label content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}/labels/{labelID}': delete: operationId: DeleteScrapersIDLabelsID tags: - ScraperTargets summary: Delete a label from a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1269,21 +1200,21 @@ paths: required: true description: The label ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Scraper target not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}/members": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}/members': get: operationId: GetScrapersIDMembers tags: @@ -1291,7 +1222,7 @@ paths: - ScraperTargets summary: List all users with member privileges for a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1299,18 +1230,18 @@ paths: required: true description: The scraper target ID. responses: - "200": + '200': description: A list of scraper target members content: application/json: schema: - $ref: "#/components/schemas/ResourceMembers" + $ref: '#/components/schemas/ResourceMembers' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostScrapersIDMembers tags: @@ -1318,7 +1249,7 @@ paths: - ScraperTargets summary: Add a member to a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1331,21 +1262,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Member added to scraper targets content: application/json: schema: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}/members/{userID}": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}/members/{userID}': delete: operationId: DeleteScrapersIDMembersID tags: @@ -1353,7 +1284,7 @@ paths: - ScraperTargets summary: Remove a member from a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -1367,15 +1298,15 @@ paths: required: true description: The scraper target ID. responses: - "204": + '204': description: Member removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}/owners": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}/owners': get: operationId: GetScrapersIDOwners tags: @@ -1383,7 +1314,7 @@ paths: - ScraperTargets summary: List all owners of a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1391,18 +1322,18 @@ paths: required: true description: The scraper target ID. responses: - "200": + '200': description: A list of scraper target owners content: application/json: schema: - $ref: "#/components/schemas/ResourceOwners" + $ref: '#/components/schemas/ResourceOwners' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostScrapersIDOwners tags: @@ -1410,7 +1341,7 @@ paths: - ScraperTargets summary: Add an owner to a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1423,21 +1354,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Scraper target owner added content: application/json: schema: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}/owners/{userID}": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}/owners/{userID}': delete: operationId: DeleteScrapersIDOwnersID tags: @@ -1445,7 +1376,7 @@ paths: - ScraperTargets summary: Remove an owner from a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -1459,207 +1390,22 @@ paths: required: true description: The scraper target ID. responses: - "204": + '204': description: Owner removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /variables: - get: - operationId: GetVariables - tags: - - Variables - summary: Get all variables - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: query - name: org - description: The organization name. - schema: - type: string - - in: query - name: orgID - description: The organization ID. - schema: - type: string - responses: - "200": - description: All variables for an organization - content: - application/json: - schema: - $ref: "#/components/schemas/Variables" - "400": - description: Invalid request - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - default: - description: Internal server error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - post: - operationId: PostVariables - summary: Create a variable - tags: - - Variables - parameters: - - $ref: "#/components/parameters/TraceSpan" - requestBody: - description: Variable to create - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - responses: - "201": - description: Variable created - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - default: - description: Internal server error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - "/variables/{variableID}": - get: - operationId: GetVariablesID - tags: - - Variables - summary: Get a variable - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: variableID - required: true - schema: - type: string - description: The variable ID. - responses: - "200": - description: Variable found - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - "404": - description: Variable not found - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - default: - description: Internal server error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - delete: - operationId: DeleteVariablesID - tags: - - Variables - summary: Delete a variable - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: variableID - required: true - schema: - type: string - description: The variable ID. - responses: - "204": - description: Variable deleted - default: - description: Internal server error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - patch: - operationId: PatchVariablesID - summary: Update a variable - tags: - - Variables - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: variableID - required: true - schema: - type: string - description: The variable ID. - requestBody: - description: Variable update to apply - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - responses: - "200": - description: Variable updated - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - default: - description: Internal server error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - put: - operationId: PutVariablesID - summary: Replace a variable - tags: - - Variables - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: variableID - required: true - schema: - type: string - description: The variable ID. - requestBody: - description: Variable to replace - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - responses: - "200": - description: Variable updated - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - default: - description: Internal server error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - "/variables/{variableID}/labels": + $ref: '#/components/schemas/Error' + '/variables/{variableID}/labels': get: operationId: GetVariablesIDLabels tags: - Variables summary: List all labels for a variable parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: variableID schema: @@ -1667,25 +1413,25 @@ paths: required: true description: The variable ID. responses: - "200": + '200': description: A list of all labels for a variable content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostVariablesIDLabels tags: - Variables summary: Add a label to a variable parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: variableID schema: @@ -1698,28 +1444,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The newly added label content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/variables/{variableID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/variables/{variableID}/labels/{labelID}': delete: operationId: DeleteVariablesIDLabelsID tags: - Variables summary: Delete a label from a variable parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: variableID schema: @@ -1733,20 +1479,20 @@ paths: required: true description: The label ID to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Variable not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /write: post: operationId: PostWrite @@ -1760,11 +1506,12 @@ paths: text/plain: schema: type: string + format: byte parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: header name: Content-Encoding - description: When present, its value indicates to the database that compression is applied to the line-protocol body. + description: 'When present, its value indicates to the database that compression is applied to the line-protocol body.' schema: type: string description: Specifies that the line protocol in the body is encoded with gzip or not encoded with identity. @@ -1785,7 +1532,7 @@ paths: - application/vnd.influx.arrow - in: header name: Content-Length - description: Content-Length is an entity header is indicating the size of the entity-body, in bytes, sent to the database. If the length is greater than the database max body configuration option, a 413 response is sent. + description: 'Content-Length is an entity header is indicating the size of the entity-body, in bytes, sent to the database. If the length is greater than the database max body configuration option, a 413 response is sent.' schema: type: integer description: The length in decimal number of octets. @@ -1800,14 +1547,14 @@ paths: - application/json - in: query name: org - description: Specifies the destination organization for writes. Takes either the ID or Name interchangeably. If both `orgID` and `org` are specified, `org` takes precedence. + description: 'Specifies the destination organization for writes. Takes either the ID or Name interchangeably. If both `orgID` and `org` are specified, `org` takes precedence.' required: true schema: type: string description: All points within batch are written to this organization. - in: query name: orgID - description: Specifies the ID of the destination organization for writes. If both `orgID` and `org` are specified, `org` takes precedence. + description: 'Specifies the ID of the destination organization for writes. If both `orgID` and `org` are specified, `org` takes precedence.' schema: type: string - in: query @@ -1821,35 +1568,35 @@ paths: name: precision description: The precision for the unix timestamps within the body line-protocol. schema: - $ref: "#/components/schemas/WritePrecision" + $ref: '#/components/schemas/WritePrecision' responses: - "204": + '204': description: Write data is correctly formatted and accepted for writing to the bucket. - "400": + '400': description: Line protocol poorly formed and no points were written. Response can be used to determine the first malformed line in the body line-protocol. All data in body was rejected and not written. content: application/json: schema: - $ref: "#/components/schemas/LineProtocolError" - "401": + $ref: '#/components/schemas/LineProtocolError' + '401': description: Token does not have sufficient permissions to write to this organization and bucket or the organization and bucket do not exist. content: application/json: schema: - $ref: "#/components/schemas/Error" - "403": + $ref: '#/components/schemas/Error' + '403': description: No token was sent and they are required. content: application/json: schema: - $ref: "#/components/schemas/Error" - "413": + $ref: '#/components/schemas/Error' + '413': description: Write has been rejected because the payload is too large. Error message returns max size supported. All data in body was rejected and not written. content: application/json: schema: - $ref: "#/components/schemas/LineProtocolLengthError" - "429": + $ref: '#/components/schemas/LineProtocolLengthError' + '429': description: Token is temporarily over quota. The Retry-After header describes when to try the write again. headers: Retry-After: @@ -1857,7 +1604,7 @@ paths: schema: type: integer format: int32 - "503": + '503': description: Server is temporarily unavailable to accept writes. The Retry-After header describes when to try the write again. headers: Retry-After: @@ -1870,7 +1617,7 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /delete: post: operationId: PostDelete @@ -1881,9 +1628,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/DeletePredicateRequest" + $ref: '#/components/schemas/DeletePredicateRequest' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: org description: Specifies the organization to delete data from. @@ -1908,84 +1655,32 @@ paths: type: string description: Only points from this bucket ID are deleted. responses: - "204": + '204': description: delete has been accepted - "400": - description: invalid request. + '400': + description: Invalid request. content: application/json: schema: - $ref: "#/components/schemas/Error" - "404": - description: the bucket or organization is not found. - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - "403": + $ref: '#/components/schemas/Error' + '403': description: no token was sent or does not have sufficient permissions. content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' + '404': + description: the bucket or organization is not found. + content: + application/json: + schema: + $ref: '#/components/schemas/Error' default: description: internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" - /ready: - servers: - - url: / - get: - operationId: GetReady - tags: - - Ready - summary: Get the readiness of an instance at startup - parameters: - - $ref: "#/components/parameters/TraceSpan" - responses: - "200": - description: The instance is ready - content: - application/json: - schema: - $ref: "#/components/schemas/Ready" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - /health: - servers: - - url: / - get: - operationId: GetHealth - tags: - - Health - summary: Get the health of an instance - parameters: - - $ref: "#/components/parameters/TraceSpan" - responses: - "200": - description: The instance is healthy - content: - application/json: - schema: - $ref: "#/components/schemas/HealthCheck" - "503": - description: The instance is unhealthy - content: - application/json: - schema: - $ref: "#/components/schemas/HealthCheck" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /sources: post: operationId: PostSources @@ -1993,60 +1688,60 @@ paths: - Sources summary: Create a source parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Source to create required: true content: application/json: schema: - $ref: "#/components/schemas/Source" + $ref: '#/components/schemas/Source' responses: - "201": + '201': description: Created Source content: application/json: schema: - $ref: "#/components/schemas/Source" + $ref: '#/components/schemas/Source' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' get: operationId: GetSources tags: - Sources summary: Get all sources parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: org description: The organization name. schema: type: string responses: - "200": + '200': description: All sources content: application/json: schema: - $ref: "#/components/schemas/Sources" + $ref: '#/components/schemas/Sources' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /sources/{sourceID}: + $ref: '#/components/schemas/Error' + '/sources/{sourceID}': delete: operationId: DeleteSourcesID tags: - Sources summary: Delete a source parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: sourceID schema: @@ -2054,27 +1749,27 @@ paths: required: true description: The source ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: View not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchSourcesID tags: - Sources summary: Update a Source parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: sourceID schema: @@ -2087,33 +1782,33 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Source" + $ref: '#/components/schemas/Source' responses: - "200": + '200': description: Created Source content: application/json: schema: - $ref: "#/components/schemas/Source" - "404": + $ref: '#/components/schemas/Source' + '404': description: Source not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' get: operationId: GetSourcesID tags: - Sources summary: Get a source parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: sourceID schema: @@ -2121,32 +1816,32 @@ paths: required: true description: The source ID. responses: - "200": + '200': description: A source content: application/json: schema: - $ref: "#/components/schemas/Source" - "404": + $ref: '#/components/schemas/Source' + '404': description: Source not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /sources/{sourceID}/health: + $ref: '#/components/schemas/Error' + '/sources/{sourceID}/health': get: operationId: GetSourcesIDHealth tags: - Sources summary: Get the health of a source parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: sourceID schema: @@ -2154,25 +1849,25 @@ paths: required: true description: The source ID. responses: - "200": + '200': description: The source is healthy content: application/json: schema: - $ref: "#/components/schemas/HealthCheck" - "503": + $ref: '#/components/schemas/HealthCheck' + '503': description: The source is not healthy content: application/json: schema: - $ref: "#/components/schemas/HealthCheck" + $ref: '#/components/schemas/HealthCheck' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /sources/{sourceID}/buckets: + $ref: '#/components/schemas/Error' + '/sources/{sourceID}/buckets': get: operationId: GetSourcesIDBuckets tags: @@ -2180,7 +1875,7 @@ paths: - Buckets summary: Get buckets in a source parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: sourceID schema: @@ -2193,24 +1888,24 @@ paths: schema: type: string responses: - "200": + '200': description: A source content: application/json: schema: - $ref: "#/components/schemas/Buckets" - "404": + $ref: '#/components/schemas/Buckets' + '404': description: Source not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /labels: post: operationId: PostLabels @@ -2223,53 +1918,53 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelCreateRequest" + $ref: '#/components/schemas/LabelCreateRequest' responses: - "201": + '201': description: Added label content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' get: operationId: GetLabels tags: - Labels summary: Get all labels parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: orgID description: The organization ID. schema: type: string responses: - "200": + '200': description: All labels content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /labels/{labelID}: + $ref: '#/components/schemas/Error' + '/labels/{labelID}': get: operationId: GetLabelsID tags: - Labels summary: Get a label parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: labelID schema: @@ -2277,18 +1972,18 @@ paths: required: true description: The ID of the label to update. responses: - "200": + '200': description: A label content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchLabelsID tags: @@ -2300,9 +1995,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelUpdate" + $ref: '#/components/schemas/LabelUpdate' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: labelID schema: @@ -2310,31 +2005,31 @@ paths: required: true description: The ID of the label to update. responses: - "200": + '200': description: Updated label content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" - "404": + $ref: '#/components/schemas/LabelResponse' + '404': description: Label not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteLabelsID tags: - Labels summary: Delete a label parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: labelID schema: @@ -2342,20 +2037,20 @@ paths: required: true description: The ID of the label to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Label not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /dashboards: post: operationId: PostDashboards @@ -2363,39 +2058,39 @@ paths: - Dashboards summary: Create a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Dashboard to create required: true content: application/json: schema: - $ref: "#/components/schemas/CreateDashboardRequest" + $ref: '#/components/schemas/CreateDashboardRequest' responses: - "201": + '201': description: Added dashboard content: application/json: schema: oneOf: - - $ref: "#/components/schemas/Dashboard" - - $ref: "#/components/schemas/DashboardWithViewProperties" + - $ref: '#/components/schemas/Dashboard' + - $ref: '#/components/schemas/DashboardWithViewProperties' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' get: operationId: GetDashboards tags: - Dashboards summary: Get all dashboards parameters: - - $ref: "#/components/parameters/TraceSpan" - - $ref: "#/components/parameters/Offset" - - $ref: "#/components/parameters/Limit" - - $ref: "#/components/parameters/Descending" + - $ref: '#/components/parameters/TraceSpan' + - $ref: '#/components/parameters/Offset' + - $ref: '#/components/parameters/Limit' + - $ref: '#/components/parameters/Descending' - in: query name: owner description: The owner ID. @@ -2407,12 +2102,12 @@ paths: schema: type: string enum: - - "ID" - - "CreatedAt" - - "UpdatedAt" + - ID + - CreatedAt + - UpdatedAt - in: query name: id - description: List of dashboard IDs to return. If both `id` and `owner` are specified, only `id` is used. + description: 'List of dashboard IDs to return. If both `id` and `owner` are specified, only `id` is used.' schema: type: array items: @@ -2428,26 +2123,26 @@ paths: schema: type: string responses: - "200": + '200': description: All dashboards content: application/json: schema: - $ref: "#/components/schemas/Dashboards" + $ref: '#/components/schemas/Dashboards' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}': get: operationId: GetDashboardsID tags: - Dashboards summary: Get a Dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2463,26 +2158,26 @@ paths: - properties description: Includes the cell view properties in the response if set to `properties` responses: - "200": + '200': description: Get a single dashboard content: application/json: schema: oneOf: - - $ref: "#/components/schemas/Dashboard" - - $ref: "#/components/schemas/DashboardWithViewProperties" - "404": + - $ref: '#/components/schemas/Dashboard' + - $ref: '#/components/schemas/DashboardWithViewProperties' + '404': description: Dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchDashboardsID tags: @@ -2497,16 +2192,16 @@ paths: type: object properties: name: - description: optional, when provided will replace the name + description: 'optional, when provided will replace the name' type: string description: - description: optional, when provided will replace the description + description: 'optional, when provided will replace the description' type: string cells: - description: optional, when provided will replace all existing cells with the cells provided - $ref: "#/components/schemas/CellWithViewProperties" + description: 'optional, when provided will replace all existing cells with the cells provided' + $ref: '#/components/schemas/CellWithViewProperties' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2514,31 +2209,31 @@ paths: required: true description: The ID of the dashboard to update. responses: - "200": + '200': description: Updated dashboard content: application/json: schema: - $ref: "#/components/schemas/Dashboard" - "404": + $ref: '#/components/schemas/Dashboard' + '404': description: Dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteDashboardsID tags: - Dashboards summary: Delete a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2546,21 +2241,21 @@ paths: required: true description: The ID of the dashboard to update. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/cells": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/cells': put: operationId: PutDashboardsIDCells tags: @@ -2573,9 +2268,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Cells" + $ref: '#/components/schemas/Cells' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2583,24 +2278,24 @@ paths: required: true description: The ID of the dashboard to update. responses: - "201": + '201': description: Replaced dashboard cells content: application/json: schema: - $ref: "#/components/schemas/Dashboard" - "404": + $ref: '#/components/schemas/Dashboard' + '404': description: Dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDashboardsIDCells tags: @@ -2613,9 +2308,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/CreateCell" + $ref: '#/components/schemas/CreateCell' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2623,25 +2318,25 @@ paths: required: true description: The ID of the dashboard to update. responses: - "201": + '201': description: Cell successfully added content: application/json: schema: - $ref: "#/components/schemas/Cell" - "404": + $ref: '#/components/schemas/Cell' + '404': description: Dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/cells/{cellID}": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/cells/{cellID}': patch: operationId: PatchDashboardsIDCellsID tags: @@ -2654,9 +2349,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/CellUpdate" + $ref: '#/components/schemas/CellUpdate' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2670,24 +2365,24 @@ paths: required: true description: The ID of the cell to update. responses: - "200": + '200': description: Updated dashboard cell content: application/json: schema: - $ref: "#/components/schemas/Cell" - "404": + $ref: '#/components/schemas/Cell' + '404': description: Cell or dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteDashboardsIDCellsID tags: @@ -2695,7 +2390,7 @@ paths: - Dashboards summary: Delete a dashboard cell parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2709,21 +2404,21 @@ paths: required: true description: The ID of the cell to delete. responses: - "204": + '204': description: Cell successfully deleted - "404": + '404': description: Cell or dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/cells/{cellID}/view": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/cells/{cellID}/view': get: operationId: GetDashboardsIDCellsIDView tags: @@ -2732,7 +2427,7 @@ paths: - Views summary: Retrieve the view for a cell parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2746,24 +2441,24 @@ paths: required: true description: The cell ID. responses: - "200": + '200': description: A dashboard cells view content: application/json: schema: - $ref: "#/components/schemas/View" - "404": + $ref: '#/components/schemas/View' + '404': description: Cell or dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchDashboardsIDCellsIDView tags: @@ -2776,9 +2471,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/View" + $ref: '#/components/schemas/View' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2792,32 +2487,32 @@ paths: required: true description: The ID of the cell to update. responses: - "200": + '200': description: Updated cell view content: application/json: schema: - $ref: "#/components/schemas/View" - "404": + $ref: '#/components/schemas/View' + '404': description: Cell or dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/labels": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/labels': get: operationId: GetDashboardsIDLabels tags: - Dashboards summary: List all labels for a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2825,25 +2520,25 @@ paths: required: true description: The dashboard ID. responses: - "200": + '200': description: A list of all labels for a dashboard content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDashboardsIDLabels tags: - Dashboards summary: Add a label to a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2856,28 +2551,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The label added to the dashboard content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/labels/{labelID}': delete: operationId: DeleteDashboardsIDLabelsID tags: - Dashboards summary: Delete a label from a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2891,21 +2586,21 @@ paths: required: true description: The ID of the label to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/members": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/members': get: operationId: GetDashboardsIDMembers tags: @@ -2913,7 +2608,7 @@ paths: - Dashboards summary: List all dashboard members parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2921,18 +2616,18 @@ paths: required: true description: The dashboard ID. responses: - "200": + '200': description: A list of users who have member privileges for a dashboard content: application/json: schema: - $ref: "#/components/schemas/ResourceMembers" + $ref: '#/components/schemas/ResourceMembers' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDashboardsIDMembers tags: @@ -2940,7 +2635,7 @@ paths: - Dashboards summary: Add a member to a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2953,21 +2648,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Added to dashboard members content: application/json: schema: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/members/{userID}": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/members/{userID}': delete: operationId: DeleteDashboardsIDMembersID tags: @@ -2975,7 +2670,7 @@ paths: - Dashboards summary: Remove a member from a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -2989,15 +2684,15 @@ paths: required: true description: The dashboard ID. responses: - "204": + '204': description: Member removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/owners": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/owners': get: operationId: GetDashboardsIDOwners tags: @@ -3005,7 +2700,7 @@ paths: - Dashboards summary: List all dashboard owners parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -3013,18 +2708,18 @@ paths: required: true description: The dashboard ID. responses: - "200": + '200': description: A list of users who have owner privileges for a dashboard content: application/json: schema: - $ref: "#/components/schemas/ResourceOwners" + $ref: '#/components/schemas/ResourceOwners' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDashboardsIDOwners tags: @@ -3032,7 +2727,7 @@ paths: - Dashboards summary: Add an owner to a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -3045,21 +2740,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Added to dashboard owners content: application/json: schema: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/owners/{userID}": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/owners/{userID}': delete: operationId: DeleteDashboardsIDOwnersID tags: @@ -3067,7 +2762,7 @@ paths: - Dashboards summary: Remove an owner from a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -3081,14 +2776,14 @@ paths: required: true description: The dashboard ID. responses: - "204": + '204': description: Owner removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /query/ast: post: operationId: PostQueryAst @@ -3096,7 +2791,7 @@ paths: tags: - Query parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: header name: Content-Type schema: @@ -3108,47 +2803,47 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LanguageRequest" + $ref: '#/components/schemas/LanguageRequest' responses: - "200": + '200': description: Abstract syntax tree of flux query. content: application/json: schema: - $ref: "#/components/schemas/ASTResponse" + $ref: '#/components/schemas/ASTResponse' default: description: Any response other than 200 is an internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /query/suggestions: get: operationId: GetQuerySuggestions tags: - Query parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' responses: - "200": + '200': description: Suggestions for next functions in call chain content: application/json: schema: - $ref: "#/components/schemas/FluxSuggestions" + $ref: '#/components/schemas/FluxSuggestions' default: description: Any response other than 200 is an internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/query/suggestions/{name}": + $ref: '#/components/schemas/Error' + '/query/suggestions/{name}': get: operationId: GetQuerySuggestionsName tags: - Query parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: name schema: @@ -3156,174 +2851,18 @@ paths: required: true description: The name of the branching suggestion. responses: - "200": + '200': description: Suggestions for next functions in call chain content: application/json: schema: - $ref: "#/components/schemas/FluxSuggestion" + $ref: '#/components/schemas/FluxSuggestion' default: description: Any response other than 200 is an internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" - /authorizations: - get: - operationId: GetAuthorizations - tags: - - Authorizations - summary: List all authorizations - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: query - name: userID - schema: - type: string - description: Only show authorizations that belong to a user ID. - - in: query - name: user - schema: - type: string - description: Only show authorizations that belong to a user name. - - in: query - name: orgID - schema: - type: string - description: Only show authorizations that belong to an organization ID. - - in: query - name: org - schema: - type: string - description: Only show authorizations that belong to a organization name. - responses: - "200": - description: A list of authorizations - content: - application/json: - schema: - $ref: "#/components/schemas/Authorizations" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - post: - operationId: PostAuthorizations - tags: - - Authorizations - summary: Create an authorization - parameters: - - $ref: "#/components/parameters/TraceSpan" - requestBody: - description: Authorization to create - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/Authorization" - responses: - "201": - description: Authorization created - content: - application/json: - schema: - $ref: "#/components/schemas/Authorization" - "400": - description: Invalid request - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - /authorizations/{authID}: - get: - operationId: GetAuthorizationsID - tags: - - Authorizations - summary: Retrieve an authorization - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: authID - schema: - type: string - required: true - description: The ID of the authorization to get. - responses: - "200": - description: Authorization details - content: - application/json: - schema: - $ref: "#/components/schemas/Authorization" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - patch: - operationId: PatchAuthorizationsID - tags: - - Authorizations - summary: Update an authorization to be active or inactive - requestBody: - description: Authorization to update - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/AuthorizationUpdateRequest" - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: authID - schema: - type: string - required: true - description: The ID of the authorization to update. - responses: - "200": - description: The active or inactie authorization - content: - application/json: - schema: - $ref: "#/components/schemas/Authorization" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - delete: - operationId: DeleteAuthorizationsID - tags: - - Authorizations - summary: Delete an authorization - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: authID - schema: - type: string - required: true - description: The ID of the authorization to delete. - responses: - "204": - description: Authorization deleted - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /query/analyze: post: operationId: PostQueryAnalyze @@ -3331,7 +2870,7 @@ paths: - Query summary: Analyze an InfluxQL or Flux query parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: header name: Content-Type schema: @@ -3343,14 +2882,14 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Query" + $ref: '#/components/schemas/Query' responses: - "200": + '200': description: Query analyze results. Errors will be empty if the query is valid. content: application/json: schema: - $ref: "#/components/schemas/AnalyzeQueryResponse" + $ref: '#/components/schemas/AnalyzeQueryResponse' default: description: Internal server error headers: @@ -3365,7 +2904,7 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /query: post: operationId: PostQuery @@ -3373,10 +2912,10 @@ paths: - Query summary: Query InfluxDB parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: header name: Accept-Encoding - description: The Accept-Encoding request HTTP header advertises which content encoding, usually a compression algorithm, the client is able to understand. + description: 'The Accept-Encoding request HTTP header advertises which content encoding, usually a compression algorithm, the client is able to understand.' schema: type: string description: Specifies that the query response in the body should be encoded with gzip or not encoded with identity. @@ -3393,12 +2932,12 @@ paths: - application/vnd.flux - in: query name: org - description: Specifies the name of the organization executing the query. Takes either the ID or Name interchangeably. If both `orgID` and `org` are specified, `org` takes precedence. + description: 'Specifies the name of the organization executing the query. Takes either the ID or Name interchangeably. If both `orgID` and `org` are specified, `org` takes precedence.' schema: type: string - in: query name: orgID - description: Specifies the ID of the organization executing the query. If both `orgID` and `org` are specified, `org` takes precedence. + description: 'Specifies the ID of the organization executing the query. If both `orgID` and `org` are specified, `org` takes precedence.' schema: type: string requestBody: @@ -3407,17 +2946,17 @@ paths: application/json: schema: oneOf: - - $ref: "#/components/schemas/Query" - - $ref: "#/components/schemas/InfluxQLQuery" + - $ref: '#/components/schemas/Query' + - $ref: '#/components/schemas/InfluxQLQuery' application/vnd.flux: schema: type: string responses: - "200": + '200': description: Query results headers: Content-Encoding: - description: The Content-Encoding entity header is used to compress the media-type. When present, its value indicates which encodings were applied to the entity-body + description: 'The Content-Encoding entity header is used to compress the media-type. When present, its value indicates which encodings were applied to the entity-body' schema: type: string description: Specifies that the response in the body is encoded with gzip or not encoded with identity. @@ -3426,7 +2965,7 @@ paths: - gzip - identity Trace-Id: - description: The Trace-Id header reports the request's trace ID, if one was generated. + description: 'The Trace-Id header reports the request''s trace ID, if one was generated.' schema: type: string description: Specifies the request's trace ID. @@ -3434,16 +2973,13 @@ paths: text/csv: schema: type: string - example: > - result,table,_start,_stop,_time,region,host,_value - mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:00Z,east,A,15.43 - mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:20Z,east,B,59.25 - mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:40Z,east,C,52.62 + example: | + result,table,_start,_stop,_time,region,host,_value mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:00Z,east,A,15.43 mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:20Z,east,B,59.25 mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:40Z,east,C,52.62 application/vnd.influx.arrow: schema: type: string format: binary - "429": + '429': description: Token is temporarily over quota. The Retry-After header describes when to try the read again. headers: Retry-After: @@ -3456,7 +2992,7 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /buckets: get: operationId: GetBuckets @@ -3464,10 +3000,10 @@ paths: - Buckets summary: List all buckets parameters: - - $ref: "#/components/parameters/TraceSpan" - - $ref: "#/components/parameters/Offset" - - $ref: "#/components/parameters/Limit" - - $ref: "#/components/parameters/After" + - $ref: '#/components/parameters/TraceSpan' + - $ref: '#/components/parameters/Offset' + - $ref: '#/components/parameters/Limit' + - $ref: '#/components/parameters/After' - in: query name: org description: The organization name. @@ -3484,59 +3020,59 @@ paths: schema: type: string responses: - "200": + '200': description: A list of buckets content: application/json: schema: - $ref: "#/components/schemas/Buckets" + $ref: '#/components/schemas/Buckets' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostBuckets tags: - Buckets summary: Create a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Bucket to create required: true content: application/json: schema: - $ref: "#/components/schemas/PostBucketRequest" + $ref: '#/components/schemas/PostBucketRequest' responses: - "201": + '201': description: Bucket created content: application/json: schema: - $ref: "#/components/schemas/Bucket" - 422: + $ref: '#/components/schemas/Bucket' + '422': description: Request body failed validation content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}': get: operationId: GetBucketsID tags: - Buckets summary: Retrieve a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3544,18 +3080,18 @@ paths: required: true description: The bucket ID. responses: - "200": + '200': description: Bucket details content: application/json: schema: - $ref: "#/components/schemas/Bucket" + $ref: '#/components/schemas/Bucket' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchBucketsID tags: @@ -3567,9 +3103,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Bucket" + $ref: '#/components/schemas/Bucket' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3577,25 +3113,25 @@ paths: required: true description: The bucket ID. responses: - "200": + '200': description: An updated bucket content: application/json: schema: - $ref: "#/components/schemas/Bucket" + $ref: '#/components/schemas/Bucket' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteBucketsID tags: - Buckets summary: Delete a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3603,28 +3139,28 @@ paths: required: true description: The ID of the bucket to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Bucket not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}/labels": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}/labels': get: operationId: GetBucketsIDLabels tags: - Buckets summary: List all labels for a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3632,25 +3168,25 @@ paths: required: true description: The bucket ID. responses: - "200": + '200': description: A list of all labels for a bucket content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostBucketsIDLabels tags: - Buckets summary: Add a label to a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3663,28 +3199,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The newly added label content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}/labels/{labelID}': delete: operationId: DeleteBucketsIDLabelsID tags: - Buckets summary: Delete a label from a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3698,21 +3234,21 @@ paths: required: true description: The ID of the label to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Bucket not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}/members": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}/members': get: operationId: GetBucketsIDMembers tags: @@ -3720,7 +3256,7 @@ paths: - Buckets summary: List all users with member privileges for a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3728,18 +3264,18 @@ paths: required: true description: The bucket ID. responses: - "200": + '200': description: A list of bucket members content: application/json: schema: - $ref: "#/components/schemas/ResourceMembers" + $ref: '#/components/schemas/ResourceMembers' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostBucketsIDMembers tags: @@ -3747,7 +3283,7 @@ paths: - Buckets summary: Add a member to a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3760,21 +3296,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Member added to bucket content: application/json: schema: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}/members/{userID}": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}/members/{userID}': delete: operationId: DeleteBucketsIDMembersID tags: @@ -3782,7 +3318,7 @@ paths: - Buckets summary: Remove a member from a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -3796,15 +3332,15 @@ paths: required: true description: The bucket ID. responses: - "204": + '204': description: Member removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}/owners": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}/owners': get: operationId: GetBucketsIDOwners tags: @@ -3812,7 +3348,7 @@ paths: - Buckets summary: List all owners of a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3820,18 +3356,18 @@ paths: required: true description: The bucket ID. responses: - "200": + '200': description: A list of bucket owners content: application/json: schema: - $ref: "#/components/schemas/ResourceOwners" + $ref: '#/components/schemas/ResourceOwners' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostBucketsIDOwners tags: @@ -3839,7 +3375,7 @@ paths: - Buckets summary: Add an owner to a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3852,21 +3388,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Bucket owner added content: application/json: schema: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}/owners/{userID}": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}/owners/{userID}': delete: operationId: DeleteBucketsIDOwnersID tags: @@ -3874,7 +3410,7 @@ paths: - Buckets summary: Remove an owner from a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -3888,14 +3424,14 @@ paths: required: true description: The bucket ID. responses: - "204": + '204': description: Owner removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /orgs: get: operationId: GetOrgs @@ -3903,10 +3439,10 @@ paths: - Organizations summary: List all organizations parameters: - - $ref: "#/components/parameters/TraceSpan" - - $ref: "#/components/parameters/Offset" - - $ref: "#/components/parameters/Limit" - - $ref: "#/components/parameters/Descending" + - $ref: '#/components/parameters/TraceSpan' + - $ref: '#/components/parameters/Offset' + - $ref: '#/components/parameters/Limit' + - $ref: '#/components/parameters/Descending' - in: query name: org schema: @@ -3923,53 +3459,53 @@ paths: type: string description: Filter organizations to a specific user ID. responses: - "200": + '200': description: A list of organizations content: application/json: schema: - $ref: "#/components/schemas/Organizations" + $ref: '#/components/schemas/Organizations' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostOrgs tags: - Organizations summary: Create an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Organization to create required: true content: application/json: schema: - $ref: "#/components/schemas/Organization" + $ref: '#/components/schemas/Organization' responses: - "201": + '201': description: Organization created content: application/json: schema: - $ref: "#/components/schemas/Organization" + $ref: '#/components/schemas/Organization' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}": + $ref: '#/components/schemas/Error' + '/orgs/{orgID}': get: operationId: GetOrgsID tags: - Organizations summary: Retrieve an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -3977,18 +3513,18 @@ paths: required: true description: The ID of the organization to get. responses: - "200": + '200': description: Organization details content: application/json: schema: - $ref: "#/components/schemas/Organization" + $ref: '#/components/schemas/Organization' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchOrgsID tags: @@ -4000,9 +3536,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Organization" + $ref: '#/components/schemas/Organization' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4010,25 +3546,25 @@ paths: required: true description: The ID of the organization to get. responses: - "200": + '200': description: Organization updated content: application/json: schema: - $ref: "#/components/schemas/Organization" + $ref: '#/components/schemas/Organization' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteOrgsID tags: - Organizations summary: Delete an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4036,21 +3572,21 @@ paths: required: true description: The ID of the organization to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Organization not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}/secrets": + $ref: '#/components/schemas/Error' + '/orgs/{orgID}/secrets': get: operationId: GetOrgsIDSecrets tags: @@ -4058,7 +3594,7 @@ paths: - Organizations summary: List all secret keys for an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4066,18 +3602,18 @@ paths: required: true description: The organization ID. responses: - "200": + '200': description: A list of all secret keys content: application/json: schema: - $ref: "#/components/schemas/SecretKeysResponse" + $ref: '#/components/schemas/SecretKeysResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchOrgsIDSecrets tags: @@ -4085,7 +3621,7 @@ paths: - Organizations summary: Update secrets in an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4098,17 +3634,17 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Secrets" + $ref: '#/components/schemas/Secrets' responses: - "204": + '204': description: Keys successfully patched default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}/secrets/delete": # had to make this because swagger wouldn't let me have a request body with a DELETE + $ref: '#/components/schemas/Error' + '/orgs/{orgID}/secrets/delete': post: operationId: PostOrgsIDSecrets tags: @@ -4116,7 +3652,7 @@ paths: - Organizations summary: Delete secrets from an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4129,17 +3665,17 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/SecretKeys" + $ref: '#/components/schemas/SecretKeys' responses: - "204": + '204': description: Keys successfully patched default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}/members": + $ref: '#/components/schemas/Error' + '/orgs/{orgID}/members': get: operationId: GetOrgsIDMembers tags: @@ -4147,7 +3683,7 @@ paths: - Organizations summary: List all members of an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4155,24 +3691,24 @@ paths: required: true description: The organization ID. responses: - "200": + '200': description: A list of organization members content: application/json: schema: - $ref: "#/components/schemas/ResourceMembers" - "404": + $ref: '#/components/schemas/ResourceMembers' + '404': description: Organization not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostOrgsIDMembers tags: @@ -4180,7 +3716,7 @@ paths: - Organizations summary: Add a member to an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4193,21 +3729,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Added to organization created content: application/json: schema: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}/members/{userID}": + $ref: '#/components/schemas/Error' + '/orgs/{orgID}/members/{userID}': delete: operationId: DeleteOrgsIDMembersID tags: @@ -4215,7 +3751,7 @@ paths: - Organizations summary: Remove a member from an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -4229,15 +3765,15 @@ paths: required: true description: The organization ID. responses: - "204": + '204': description: Member removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}/owners": + $ref: '#/components/schemas/Error' + '/orgs/{orgID}/owners': get: operationId: GetOrgsIDOwners tags: @@ -4245,7 +3781,7 @@ paths: - Organizations summary: List all owners of an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4253,24 +3789,24 @@ paths: required: true description: The organization ID. responses: - "200": + '200': description: A list of organization owners content: application/json: schema: - $ref: "#/components/schemas/ResourceOwners" - "404": + $ref: '#/components/schemas/ResourceOwners' + '404': description: Organization not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostOrgsIDOwners tags: @@ -4278,7 +3814,7 @@ paths: - Organizations summary: Add an owner to an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4291,21 +3827,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Organization owner added content: application/json: schema: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}/owners/{userID}": + $ref: '#/components/schemas/Error' + '/orgs/{orgID}/owners/{userID}': delete: operationId: DeleteOrgsIDOwnersID tags: @@ -4313,7 +3849,7 @@ paths: - Organizations summary: Remove an owner from an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -4327,14 +3863,14 @@ paths: required: true description: The organization ID. responses: - "204": + '204': description: Owner removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /stacks: get: operationId: ListStacks @@ -4359,7 +3895,7 @@ paths: type: string description: A collection of stackIDs to filter the list by. responses: - "200": + '200': description: Influx stacks found content: application/json: @@ -4369,13 +3905,13 @@ paths: stacks: type: array items: - $ref: "#/components/schemas/Stack" + $ref: '#/components/schemas/Stack' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: CreateStack tags: @@ -4400,19 +3936,19 @@ paths: items: type: string responses: - "201": + '201': description: InfluxDB Stack created content: application/json: schema: - $ref: "#/components/schemas/Stack" + $ref: '#/components/schemas/Stack' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /stacks/{stack_id}: + $ref: '#/components/schemas/Error' + '/stacks/{stack_id}': get: operationId: ReadStack tags: @@ -4426,18 +3962,18 @@ paths: type: string description: The stack id responses: - "200": + '200': description: Read an influx stack by ID content: application/json: schema: - $ref: "#/components/schemas/Stack" + $ref: '#/components/schemas/Stack' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: UpdateStack tags: @@ -4480,20 +4016,22 @@ paths: type: string templateMetaName: type: string - required: ["kind", "resourceID"] + required: + - kind + - resourceID responses: - "200": + '200': description: Influx stack updated content: application/json: schema: - $ref: "#/components/schemas/Stack" + $ref: '#/components/schemas/Stack' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteStack tags: @@ -4513,15 +4051,15 @@ paths: type: string description: The organization id of the user responses: - "204": + '204': description: Stack and all its associated resources are deleted default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /stacks/{stack_id}/uninstall: + $ref: '#/components/schemas/Error' + '/stacks/{stack_id}/uninstall': post: operationId: UninstallStack tags: @@ -4535,18 +4073,18 @@ paths: type: string description: The stack id responses: - "200": + '200': description: Influx stack uninstalled content: application/json: schema: - $ref: "#/components/schemas/Stack" + $ref: '#/components/schemas/Stack' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /templates/apply: post: operationId: ApplyTemplate @@ -4558,39 +4096,34 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/TemplateApply" + $ref: '#/components/schemas/TemplateApply' application/x-jsonnet: schema: - $ref: "#/components/schemas/TemplateApply" + $ref: '#/components/schemas/TemplateApply' text/yml: schema: - $ref: "#/components/schemas/TemplateApply" + $ref: '#/components/schemas/TemplateApply' responses: - "200": - 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. + '200': + 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. content: application/json: schema: - $ref: "#/components/schemas/TemplateSummary" - "201": - 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` + $ref: '#/components/schemas/TemplateSummary' + '201': + 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` content: application/json: schema: - $ref: "#/components/schemas/TemplateSummary" + $ref: '#/components/schemas/TemplateSummary' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /templates/export: post: operationId: ExportTemplate @@ -4604,24 +4137,24 @@ paths: application/json: schema: oneOf: - - $ref: "#/components/schemas/TemplateExportByID" - - $ref: "#/components/schemas/TemplateExportByName" + - $ref: '#/components/schemas/TemplateExportByID' + - $ref: '#/components/schemas/TemplateExportByName' responses: - "200": + '200': description: InfluxDB template created content: application/json: schema: - $ref: "#/components/schemas/Template" + $ref: '#/components/schemas/Template' application/x-yaml: schema: - $ref: "#/components/schemas/Template" + $ref: '#/components/schemas/Template' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /tasks: get: operationId: GetTasks @@ -4629,7 +4162,7 @@ paths: - Tasks summary: List all tasks parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: name description: Returns task with a specific name. @@ -4672,53 +4205,53 @@ paths: default: 100 description: The number of tasks to return responses: - "200": + '200': description: A list of tasks content: application/json: schema: - $ref: "#/components/schemas/Tasks" + $ref: '#/components/schemas/Tasks' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTasks tags: - Tasks summary: Create a new task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Task to create required: true content: application/json: schema: - $ref: "#/components/schemas/TaskCreateRequest" + $ref: '#/components/schemas/TaskCreateRequest' responses: - "201": + '201': description: Task created content: application/json: schema: - $ref: "#/components/schemas/Task" + $ref: '#/components/schemas/Task' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}': get: operationId: GetTasksID tags: - Tasks summary: Retrieve a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4726,18 +4259,18 @@ paths: required: true description: The task ID. responses: - "200": + '200': description: Task details content: application/json: schema: - $ref: "#/components/schemas/Task" + $ref: '#/components/schemas/Task' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchTasksID tags: @@ -4750,9 +4283,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/TaskUpdateRequest" + $ref: '#/components/schemas/TaskUpdateRequest' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4760,18 +4293,18 @@ paths: required: true description: The task ID. responses: - "200": + '200': description: Task updated content: application/json: schema: - $ref: "#/components/schemas/Task" + $ref: '#/components/schemas/Task' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteTasksID tags: @@ -4779,7 +4312,7 @@ paths: summary: Delete a task description: Deletes a task and all associated records parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4787,22 +4320,22 @@ paths: required: true description: The ID of the task to delete. responses: - "204": + '204': description: Task deleted default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/runs": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/runs': get: operationId: GetTasksIDRuns tags: - Tasks summary: List runs for a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4827,33 +4360,33 @@ paths: schema: type: string format: date-time - description: Filter runs to those scheduled after this time, RFC3339 + description: 'Filter runs to those scheduled after this time, RFC3339' - in: query name: beforeTime schema: type: string format: date-time - description: Filter runs to those scheduled before this time, RFC3339 + description: 'Filter runs to those scheduled before this time, RFC3339' responses: - "200": + '200': description: A list of task runs content: application/json: schema: - $ref: "#/components/schemas/Runs" + $ref: '#/components/schemas/Runs' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTasksIDRuns tags: - Tasks - summary: Manually start a task run, overriding the current schedule + summary: 'Manually start a task run, overriding the current schedule' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4863,28 +4396,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/RunManually" + $ref: '#/components/schemas/RunManually' responses: - "201": + '201': description: Run scheduled to start content: application/json: schema: - $ref: "#/components/schemas/Run" + $ref: '#/components/schemas/Run' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/runs/{runID}": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/runs/{runID}': get: operationId: GetTasksIDRunsID tags: - Tasks summary: Retrieve a single run for a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4898,25 +4431,25 @@ paths: required: true description: The run ID. responses: - "200": + '200': description: The run record content: application/json: schema: - $ref: "#/components/schemas/Run" + $ref: '#/components/schemas/Run' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteTasksIDRunsID tags: - Tasks summary: Cancel a running task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4930,22 +4463,22 @@ paths: required: true description: The run ID. responses: - "204": + '204': description: Delete has been accepted default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/runs/{runID}/retry": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/runs/{runID}/retry': post: operationId: PostTasksIDRunsIDRetry tags: - Tasks summary: Retry a task run parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4959,26 +4492,26 @@ paths: required: true description: The run ID. responses: - "200": + '200': description: Run that has been queued content: application/json: schema: - $ref: "#/components/schemas/Run" + $ref: '#/components/schemas/Run' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/logs": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/logs': get: operationId: GetTasksIDLogs tags: - Tasks summary: Retrieve all logs for a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4986,26 +4519,26 @@ paths: required: true description: The task ID. responses: - "200": + '200': description: All logs for a task content: application/json: schema: - $ref: "#/components/schemas/Logs" + $ref: '#/components/schemas/Logs' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/runs/{runID}/logs": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/runs/{runID}/logs': get: operationId: GetTasksIDRunsIDLogs tags: - Tasks summary: Retrieve all logs for a run parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5019,26 +4552,26 @@ paths: required: true description: ID of run to get logs for. responses: - "200": + '200': description: All logs for a run content: application/json: schema: - $ref: "#/components/schemas/Logs" + $ref: '#/components/schemas/Logs' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/labels": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/labels': get: operationId: GetTasksIDLabels tags: - Tasks summary: List all labels for a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5046,25 +4579,25 @@ paths: required: true description: The task ID. responses: - "200": + '200': description: A list of all labels for a task content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTasksIDLabels tags: - Tasks summary: Add a label to a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5077,28 +4610,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: A list of all labels for a task content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/labels/{labelID}': delete: operationId: DeleteTasksIDLabelsID tags: - Tasks summary: Delete a label from a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5112,20 +4645,20 @@ paths: required: true description: The label ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Task not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /flags: get: operationId: GetFlags @@ -5133,20 +4666,20 @@ paths: - Users summary: Return the feature flags for the currently authenticated user parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' responses: - "200": + '200': description: Feature flags for the currently authenticated user content: application/json: schema: - $ref: "#/components/schemas/Flags" + $ref: '#/components/schemas/Flags' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /me: get: operationId: GetMe @@ -5154,20 +4687,20 @@ paths: - Users summary: Return the current authenticated user parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' responses: - "200": + '200': description: Currently authenticated user content: application/json: schema: - $ref: "#/components/schemas/User" + $ref: '#/components/schemas/UserResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /me/password: put: operationId: PutMePassword @@ -5177,24 +4710,24 @@ paths: security: - BasicAuth: [] parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: New password required: true content: application/json: schema: - $ref: "#/components/schemas/PasswordResetBody" + $ref: '#/components/schemas/PasswordResetBody' responses: - "204": + '204': description: Password successfully updated default: description: Unsuccessful authentication content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/members": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/members': get: operationId: GetTasksIDMembers tags: @@ -5202,7 +4735,7 @@ paths: - Tasks summary: List all task members parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5210,18 +4743,18 @@ paths: required: true description: The task ID. responses: - "200": + '200': description: A list of users who have member privileges for a task content: application/json: schema: - $ref: "#/components/schemas/ResourceMembers" + $ref: '#/components/schemas/ResourceMembers' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTasksIDMembers tags: @@ -5229,7 +4762,7 @@ paths: - Tasks summary: Add a member to a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5242,21 +4775,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Added to task members content: application/json: schema: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/members/{userID}": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/members/{userID}': delete: operationId: DeleteTasksIDMembersID tags: @@ -5264,7 +4797,7 @@ paths: - Tasks summary: Remove a member from a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -5278,15 +4811,15 @@ paths: required: true description: The task ID. responses: - "204": + '204': description: Member removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/owners": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/owners': get: operationId: GetTasksIDOwners tags: @@ -5294,7 +4827,7 @@ paths: - Tasks summary: List all owners of a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5302,18 +4835,18 @@ paths: required: true description: The task ID. responses: - "200": + '200': description: A list of users who have owner privileges for a task content: application/json: schema: - $ref: "#/components/schemas/ResourceOwners" + $ref: '#/components/schemas/ResourceOwners' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTasksIDOwners tags: @@ -5321,7 +4854,7 @@ paths: - Tasks summary: Add an owner to a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5334,21 +4867,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Added to task owners content: application/json: schema: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/owners/{userID}": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/owners/{userID}': delete: operationId: DeleteTasksIDOwnersID tags: @@ -5356,7 +4889,7 @@ paths: - Tasks summary: Remove an owner from a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -5370,145 +4903,15 @@ paths: required: true description: The task ID. responses: - "204": + '204': description: Owner removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /users: - get: - operationId: GetUsers - tags: - - Users - summary: List all users - parameters: - - $ref: "#/components/parameters/TraceSpan" - responses: - "200": - description: A list of users - content: - application/json: - schema: - $ref: "#/components/schemas/Users" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - post: - operationId: PostUsers - tags: - - Users - summary: Create a user - parameters: - - $ref: "#/components/parameters/TraceSpan" - requestBody: - description: User to create - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/User" - responses: - "201": - description: User created - content: - application/json: - schema: - $ref: "#/components/schemas/User" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - "/users/{userID}": - get: - operationId: GetUsersID - tags: - - Users - summary: Retrieve a user - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: userID - schema: - type: string - required: true - description: The user ID. - responses: - "200": - description: User details - content: - application/json: - schema: - $ref: "#/components/schemas/User" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - patch: - operationId: PatchUsersID - tags: - - Users - summary: Update a user - requestBody: - description: User update to apply - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/User" - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: userID - schema: - type: string - required: true - description: The ID of the user to update. - responses: - "200": - description: User updated - content: - application/json: - schema: - $ref: "#/components/schemas/User" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - delete: - operationId: DeleteUsersID - tags: - - Users - summary: Delete a user - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: userID - schema: - type: string - required: true - description: The ID of the user to delete. - responses: - "204": - description: User deleted - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - "/users/{userID}/password": + $ref: '#/components/schemas/Error' + '/users/{userID}/password': post: operationId: PostUsersIDPassword tags: @@ -5517,7 +4920,7 @@ paths: security: - BasicAuth: [] parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -5530,16 +4933,16 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/PasswordResetBody" + $ref: '#/components/schemas/PasswordResetBody' responses: - "204": + '204': description: Password successfully updated default: description: Unsuccessful authentication content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /checks: get: operationId: GetChecks @@ -5547,9 +4950,9 @@ paths: - Checks summary: Get all checks parameters: - - $ref: "#/components/parameters/TraceSpan" - - $ref: "#/components/parameters/Offset" - - $ref: "#/components/parameters/Limit" + - $ref: '#/components/parameters/TraceSpan' + - $ref: '#/components/parameters/Offset' + - $ref: '#/components/parameters/Limit' - in: query name: orgID required: true @@ -5557,18 +4960,18 @@ paths: schema: type: string responses: - "200": + '200': description: A list of checks content: application/json: schema: - $ref: "#/components/schemas/Checks" + $ref: '#/components/schemas/Checks' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: CreateCheck tags: @@ -5580,28 +4983,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/PostCheck" + $ref: '#/components/schemas/PostCheck' responses: - "201": + '201': description: Check created content: application/json: schema: - $ref: "#/components/schemas/Check" + $ref: '#/components/schemas/Check' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/checks/{checkID}": + $ref: '#/components/schemas/Error' + '/checks/{checkID}': get: operationId: GetChecksID tags: - Checks summary: Get a check parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5609,18 +5012,18 @@ paths: required: true description: The check ID. responses: - "200": + '200': description: The check requested content: application/json: schema: - $ref: "#/components/schemas/Check" + $ref: '#/components/schemas/Check' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' put: operationId: PutChecksID tags: @@ -5632,9 +5035,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Check" + $ref: '#/components/schemas/Check' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5642,24 +5045,24 @@ paths: required: true description: The check ID. responses: - "200": + '200': description: An updated check content: application/json: schema: - $ref: "#/components/schemas/Check" - "404": + $ref: '#/components/schemas/Check' + '404': description: The check was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchChecksID tags: @@ -5671,9 +5074,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/CheckPatch" + $ref: '#/components/schemas/CheckPatch' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5681,31 +5084,31 @@ paths: required: true description: The check ID. responses: - "200": + '200': description: An updated check content: application/json: schema: - $ref: "#/components/schemas/Check" - "404": + $ref: '#/components/schemas/Check' + '404': description: The check was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteChecksID tags: - Checks summary: Delete a check parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5713,28 +5116,28 @@ paths: required: true description: The check ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: The check was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/checks/{checkID}/labels": + $ref: '#/components/schemas/Error' + '/checks/{checkID}/labels': get: operationId: GetChecksIDLabels tags: - Checks summary: List all labels for a check parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5742,25 +5145,25 @@ paths: required: true description: The check ID. responses: - "200": + '200': description: A list of all labels for a check content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostChecksIDLabels tags: - Checks summary: Add a label to a check parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5773,28 +5176,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The label was added to the check content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/checks/{checkID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/checks/{checkID}/labels/{labelID}': delete: operationId: DeleteChecksIDLabelsID tags: - Checks summary: Delete label from a check parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5808,20 +5211,20 @@ paths: required: true description: The ID of the label to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Check or label not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /notificationRules: get: operationId: GetNotificationRules @@ -5829,9 +5232,9 @@ paths: - NotificationRules summary: Get all notification rules parameters: - - $ref: "#/components/parameters/TraceSpan" - - $ref: "#/components/parameters/Offset" - - $ref: "#/components/parameters/Limit" + - $ref: '#/components/parameters/TraceSpan' + - $ref: '#/components/parameters/Offset' + - $ref: '#/components/parameters/Limit' - in: query name: orgID required: true @@ -5848,21 +5251,21 @@ paths: description: Only return notification rules that "would match" statuses which contain the tag key value pairs provided. schema: type: string - pattern: ^[a-zA-Z0-9_]+:[a-zA-Z0-9_]+$ - example: env:prod + pattern: '^[a-zA-Z0-9_]+:[a-zA-Z0-9_]+$' + example: 'env:prod' responses: - "200": + '200': description: A list of notification rules content: application/json: schema: - $ref: "#/components/schemas/NotificationRules" + $ref: '#/components/schemas/NotificationRules' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: CreateNotificationRule tags: @@ -5874,28 +5277,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/PostNotificationRule" + $ref: '#/components/schemas/PostNotificationRule' responses: - "201": + '201': description: Notification rule created content: application/json: schema: - $ref: "#/components/schemas/NotificationRule" + $ref: '#/components/schemas/NotificationRule' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/checks/{checkID}/query": + $ref: '#/components/schemas/Error' + '/checks/{checkID}/query': get: operationId: GetChecksIDQuery tags: - Checks summary: Get a check query parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5903,38 +5306,38 @@ paths: required: true description: The check ID. responses: - "200": + '200': description: The check query requested content: application/json: schema: - $ref: "#/components/schemas/FluxResponse" - "400": + $ref: '#/components/schemas/FluxResponse' + '400': description: Invalid request content: application/json: schema: - $ref: "#/components/schemas/Error" - "404": + $ref: '#/components/schemas/Error' + '404': description: Check not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationRules/{ruleID}": + $ref: '#/components/schemas/Error' + '/notificationRules/{ruleID}': get: operationId: GetNotificationRulesID tags: - NotificationRules summary: Get a notification rule parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -5942,18 +5345,18 @@ paths: required: true description: The notification rule ID. responses: - "200": + '200': description: The notification rule requested content: application/json: schema: - $ref: "#/components/schemas/NotificationRule" + $ref: '#/components/schemas/NotificationRule' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' put: operationId: PutNotificationRulesID tags: @@ -5965,9 +5368,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/NotificationRule" + $ref: '#/components/schemas/NotificationRule' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -5975,24 +5378,24 @@ paths: required: true description: The notification rule ID. responses: - "200": + '200': description: An updated notification rule content: application/json: schema: - $ref: "#/components/schemas/NotificationRule" - "404": + $ref: '#/components/schemas/NotificationRule' + '404': description: The notification rule was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchNotificationRulesID tags: @@ -6004,9 +5407,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/NotificationRuleUpdate" + $ref: '#/components/schemas/NotificationRuleUpdate' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -6014,31 +5417,31 @@ paths: required: true description: The notification rule ID. responses: - "200": + '200': description: An updated notification rule content: application/json: schema: - $ref: "#/components/schemas/NotificationRule" - "404": + $ref: '#/components/schemas/NotificationRule' + '404': description: The notification rule was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteNotificationRulesID tags: - NotificationRules summary: Delete a notification rule parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -6046,28 +5449,28 @@ paths: required: true description: The notification rule ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: The check was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationRules/{ruleID}/labels": + $ref: '#/components/schemas/Error' + '/notificationRules/{ruleID}/labels': get: operationId: GetNotificationRulesIDLabels tags: - NotificationRules summary: List all labels for a notification rule parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -6075,25 +5478,25 @@ paths: required: true description: The notification rule ID. responses: - "200": + '200': description: A list of all labels for a notification rule content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostNotificationRuleIDLabels tags: - NotificationRules summary: Add a label to a notification rule parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -6106,28 +5509,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The label was added to the notification rule content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationRules/{ruleID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/notificationRules/{ruleID}/labels/{labelID}': delete: operationId: DeleteNotificationRulesIDLabelsID tags: - NotificationRules summary: Delete label from a notification rule parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -6141,28 +5544,28 @@ paths: required: true description: The ID of the label to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Rule or label not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationRules/{ruleID}/query": + $ref: '#/components/schemas/Error' + '/notificationRules/{ruleID}/query': get: operationId: GetNotificationRulesIDQuery tags: - Rules summary: Get a notification rule query parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -6170,30 +5573,30 @@ paths: required: true description: The notification rule ID. responses: - "200": + '200': description: The notification rule query requested content: application/json: schema: - $ref: "#/components/schemas/FluxResponse" - "400": + $ref: '#/components/schemas/FluxResponse' + '400': description: Invalid request content: application/json: schema: - $ref: "#/components/schemas/Error" - "404": + $ref: '#/components/schemas/Error' + '404': description: Notification rule not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /notificationEndpoints: get: operationId: GetNotificationEndpoints @@ -6201,9 +5604,9 @@ paths: - NotificationEndpoints summary: Get all notification endpoints parameters: - - $ref: "#/components/parameters/TraceSpan" - - $ref: "#/components/parameters/Offset" - - $ref: "#/components/parameters/Limit" + - $ref: '#/components/parameters/TraceSpan' + - $ref: '#/components/parameters/Offset' + - $ref: '#/components/parameters/Limit' - in: query name: orgID required: true @@ -6211,18 +5614,18 @@ paths: schema: type: string responses: - "200": + '200': description: A list of notification endpoints content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpoints" + $ref: '#/components/schemas/NotificationEndpoints' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: CreateNotificationEndpoint tags: @@ -6234,28 +5637,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/PostNotificationEndpoint" + $ref: '#/components/schemas/PostNotificationEndpoint' responses: - "201": + '201': description: Notification endpoint created content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpoint" + $ref: '#/components/schemas/NotificationEndpoint' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationEndpoints/{endpointID}": + $ref: '#/components/schemas/Error' + '/notificationEndpoints/{endpointID}': get: operationId: GetNotificationEndpointsID tags: - NotificationEndpoints summary: Get a notification endpoint parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6263,18 +5666,18 @@ paths: required: true description: The notification endpoint ID. responses: - "200": + '200': description: The notification endpoint requested content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpoint" + $ref: '#/components/schemas/NotificationEndpoint' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' put: operationId: PutNotificationEndpointsID tags: @@ -6286,9 +5689,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpoint" + $ref: '#/components/schemas/NotificationEndpoint' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6296,24 +5699,24 @@ paths: required: true description: The notification endpoint ID. responses: - "200": + '200': description: An updated notification endpoint content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpoint" - "404": + $ref: '#/components/schemas/NotificationEndpoint' + '404': description: The notification endpoint was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchNotificationEndpointsID tags: @@ -6325,9 +5728,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpointUpdate" + $ref: '#/components/schemas/NotificationEndpointUpdate' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6335,31 +5738,31 @@ paths: required: true description: The notification endpoint ID. responses: - "200": + '200': description: An updated notification endpoint content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpoint" - "404": + $ref: '#/components/schemas/NotificationEndpoint' + '404': description: The notification endpoint was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteNotificationEndpointsID tags: - NotificationEndpoints summary: Delete a notification endpoint parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6367,28 +5770,28 @@ paths: required: true description: The notification endpoint ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: The endpoint was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationEndpoints/{endpointID}/labels": + $ref: '#/components/schemas/Error' + '/notificationEndpoints/{endpointID}/labels': get: operationId: GetNotificationEndpointsIDLabels tags: - NotificationEndpoints summary: List all labels for a notification endpoint parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6396,25 +5799,25 @@ paths: required: true description: The notification endpoint ID. responses: - "200": + '200': description: A list of all labels for a notification endpoint content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostNotificationEndpointIDLabels tags: - NotificationEndpoints summary: Add a label to a notification endpoint parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6427,28 +5830,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The label was added to the notification endpoint content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationEndpoints/{endpointID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/notificationEndpoints/{endpointID}/labels/{labelID}': delete: operationId: DeleteNotificationEndpointsIDLabelsID tags: - NotificationEndpoints summary: Delete a label from a notification endpoint parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6462,22 +5865,581 @@ paths: required: true description: The ID of the label to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Endpoint or label not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' + /users: + get: + operationId: GetUsers + tags: + - Users + summary: List all users + parameters: + - $ref: '#/components/parameters/TraceSpan' + responses: + '200': + description: A list of users + content: + application/json: + schema: + $ref: '#/components/schemas/Users' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + post: + operationId: PostUsers + tags: + - Users + summary: Create a user + parameters: + - $ref: '#/components/parameters/TraceSpan' + requestBody: + description: User to create + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/User' + responses: + '201': + description: User created + content: + application/json: + schema: + $ref: '#/components/schemas/UserResponse' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + '/users/{userID}': + get: + operationId: GetUsersID + tags: + - Users + summary: Retrieve a user + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: userID + schema: + type: string + required: true + description: The user ID. + responses: + '200': + description: User details + content: + application/json: + schema: + $ref: '#/components/schemas/UserResponse' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + patch: + operationId: PatchUsersID + tags: + - Users + summary: Update a user + requestBody: + description: User update to apply + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/User' + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: userID + schema: + type: string + required: true + description: The ID of the user to update. + responses: + '200': + description: User updated + content: + application/json: + schema: + $ref: '#/components/schemas/UserResponse' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + delete: + operationId: DeleteUsersID + tags: + - Users + summary: Delete a user + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: userID + schema: + type: string + required: true + description: The ID of the user to delete. + responses: + '204': + description: User deleted + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /setup: + get: + operationId: GetSetup + tags: + - Setup + summary: 'Check if database has default user, org, bucket' + description: 'Returns `true` if no default user, organization, or bucket has been created.' + parameters: + - $ref: '#/components/parameters/TraceSpan' + responses: + '200': + description: allowed true or false + content: + application/json: + schema: + $ref: '#/components/schemas/IsOnboarding' + post: + operationId: PostSetup + tags: + - Setup + summary: 'Set up initial user, org and bucket' + description: 'Post an onboarding request to set up initial user, org and bucket.' + parameters: + - $ref: '#/components/parameters/TraceSpan' + requestBody: + description: Source to create + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/OnboardingRequest' + responses: + '201': + description: 'Created default user, bucket, org' + content: + application/json: + schema: + $ref: '#/components/schemas/OnboardingResponse' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /setup/user: + post: + operationId: PostSetupUser + tags: + - Setup + summary: 'Set up a new user, org and bucket' + description: 'Post an onboarding request to set up a new user, org and bucket.' + requestBody: + description: Source to create + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/OnboardingRequest' + responses: + '201': + description: 'Created default user, bucket, org' + content: + application/json: + schema: + $ref: '#/components/schemas/OnboardingResponse' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /authorizations: + get: + operationId: GetAuthorizations + tags: + - Authorizations + summary: List all authorizations + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: query + name: userID + schema: + type: string + description: Only show authorizations that belong to a user ID. + - in: query + name: user + schema: + type: string + description: Only show authorizations that belong to a user name. + - in: query + name: orgID + schema: + type: string + description: Only show authorizations that belong to an organization ID. + - in: query + name: org + schema: + type: string + description: Only show authorizations that belong to a organization name. + - in: query + name: token + schema: + type: string + description: Find a token by value. + responses: + '200': + description: A list of authorizations + content: + application/json: + schema: + $ref: '#/components/schemas/Authorizations' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + post: + operationId: PostAuthorizations + tags: + - Authorizations + summary: Create an authorization + parameters: + - $ref: '#/components/parameters/TraceSpan' + requestBody: + description: Authorization to create + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Authorization' + responses: + '201': + description: Authorization created + content: + application/json: + schema: + $ref: '#/components/schemas/Authorization' + '400': + description: Invalid request + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + '/authorizations/{authID}': + get: + operationId: GetAuthorizationsID + tags: + - Authorizations + summary: Retrieve an authorization + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: authID + schema: + type: string + required: true + description: The ID of the authorization to get. + responses: + '200': + description: Authorization details + content: + application/json: + schema: + $ref: '#/components/schemas/Authorization' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + patch: + operationId: PatchAuthorizationsID + tags: + - Authorizations + summary: Update an authorization to be active or inactive + requestBody: + description: Authorization to update + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/AuthorizationUpdateRequest' + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: authID + schema: + type: string + required: true + description: The ID of the authorization to update. + responses: + '200': + description: The active or inactie authorization + content: + application/json: + schema: + $ref: '#/components/schemas/Authorization' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + delete: + operationId: DeleteAuthorizationsID + tags: + - Authorizations + summary: Delete an authorization + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: authID + schema: + type: string + required: true + description: The ID of the authorization to delete. + responses: + '204': + description: Authorization deleted + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /variables: + get: + operationId: GetVariables + tags: + - Variables + summary: Get all variables + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: query + name: org + description: The organization name. + schema: + type: string + - in: query + name: orgID + description: The organization ID. + schema: + type: string + responses: + '200': + description: All variables for an organization + content: + application/json: + schema: + $ref: '#/components/schemas/Variables' + '400': + description: Invalid request + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + default: + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + post: + operationId: PostVariables + summary: Create a variable + tags: + - Variables + parameters: + - $ref: '#/components/parameters/TraceSpan' + requestBody: + description: Variable to create + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + responses: + '201': + description: Variable created + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + default: + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + '/variables/{variableID}': + get: + operationId: GetVariablesID + tags: + - Variables + summary: Get a variable + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: variableID + required: true + schema: + type: string + description: The variable ID. + responses: + '200': + description: Variable found + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + '404': + description: Variable not found + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + default: + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + delete: + operationId: DeleteVariablesID + tags: + - Variables + summary: Delete a variable + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: variableID + required: true + schema: + type: string + description: The variable ID. + responses: + '204': + description: Variable deleted + default: + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + patch: + operationId: PatchVariablesID + summary: Update a variable + tags: + - Variables + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: variableID + required: true + schema: + type: string + description: The variable ID. + requestBody: + description: Variable update to apply + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + responses: + '200': + description: Variable updated + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + default: + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + put: + operationId: PutVariablesID + summary: Replace a variable + tags: + - Variables + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: variableID + required: true + schema: + type: string + description: The variable ID. + requestBody: + description: Variable to replace + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + responses: + '200': + description: Variable updated + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + default: + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' components: parameters: + TraceSpan: + in: header + name: Zap-Trace-Span + description: OpenTracing span context + example: + trace_id: '1' + span_id: '1' + baggage: + key: value + required: false + schema: + type: string Offset: in: query name: offset @@ -6507,27 +6469,14 @@ components: required: false schema: type: string - TraceSpan: - in: header - name: Zap-Trace-Span - description: OpenTracing span context - example: - trace_id: "1" - span_id: "1" - baggage: - key: value - required: false - schema: - type: string After: in: query name: after required: false schema: type: string - description: > - The last resource ID from which to seek from (but not including). - This is to be used instead of `offset`. + description: | + The last resource ID from which to seek from (but not including). This is to be used instead of `offset`. schemas: LanguageRequest: description: Flux query to be analyzed. @@ -6545,7 +6494,7 @@ components: - query properties: extern: - $ref: "#/components/schemas/File" + $ref: '#/components/schemas/File' query: description: Query script to execute. type: string @@ -6555,7 +6504,7 @@ components: enum: - flux dialect: - $ref: "#/components/schemas/Dialect" + $ref: '#/components/schemas/Dialect' now: description: Specifies the time that should be reported as "now" in the query. Default is the server's now time. type: string @@ -6582,7 +6531,7 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' path: description: Package import path type: string @@ -6593,50 +6542,52 @@ components: description: Package files type: array items: - $ref: "#/components/schemas/File" + $ref: '#/components/schemas/File' File: description: Represents a source from a single file type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' name: description: The name of the file. type: string package: - $ref: "#/components/schemas/PackageClause" + $ref: '#/components/schemas/PackageClause' imports: description: A list of package imports type: array items: - $ref: "#/components/schemas/ImportDeclaration" + $ref: '#/components/schemas/ImportDeclaration' body: description: List of Flux statements type: array items: - $ref: "#/components/schemas/Statement" + $ref: '#/components/schemas/Statement' PackageClause: description: Defines a package identifier type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' name: - $ref: "#/components/schemas/Identifier" + $ref: '#/components/schemas/Identifier' ImportDeclaration: description: Declares a package import type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' as: - $ref: "#/components/schemas/Identifier" + $ref: '#/components/schemas/Identifier' path: - $ref: "#/components/schemas/StringLiteral" + $ref: '#/components/schemas/StringLiteral' DeletePredicateRequest: description: The delete predicate request. type: object - required: [start, stop] + required: + - start + - stop properties: start: description: RFC3339Nano @@ -6652,35 +6603,38 @@ components: type: string Node: oneOf: - - $ref: "#/components/schemas/Expression" - - $ref: "#/components/schemas/Block" + - $ref: '#/components/schemas/Expression' + - $ref: '#/components/schemas/Block' + NodeType: + description: Type of AST node + type: string Block: description: A set of statements type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' body: description: Block body type: array items: - $ref: "#/components/schemas/Statement" + $ref: '#/components/schemas/Statement' Statement: oneOf: - - $ref: "#/components/schemas/BadStatement" - - $ref: "#/components/schemas/VariableAssignment" - - $ref: "#/components/schemas/MemberAssignment" - - $ref: "#/components/schemas/ExpressionStatement" - - $ref: "#/components/schemas/ReturnStatement" - - $ref: "#/components/schemas/OptionStatement" - - $ref: "#/components/schemas/BuiltinStatement" - - $ref: "#/components/schemas/TestStatement" + - $ref: '#/components/schemas/BadStatement' + - $ref: '#/components/schemas/VariableAssignment' + - $ref: '#/components/schemas/MemberAssignment' + - $ref: '#/components/schemas/ExpressionStatement' + - $ref: '#/components/schemas/ReturnStatement' + - $ref: '#/components/schemas/OptionStatement' + - $ref: '#/components/schemas/BuiltinStatement' + - $ref: '#/components/schemas/TestStatement' BadStatement: description: A placeholder for statements for which no correct statement nodes can be created type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' text: description: Raw source text type: string @@ -6689,247 +6643,247 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' id: - $ref: "#/components/schemas/Identifier" + $ref: '#/components/schemas/Identifier' init: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' MemberAssignment: description: Object property assignment type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' member: - $ref: "#/components/schemas/MemberExpression" + $ref: '#/components/schemas/MemberExpression' init: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' ExpressionStatement: description: May consist of an expression that does not return a value and is executed solely for its side-effects type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' expression: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' ReturnStatement: description: Defines an expression to return type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' argument: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' OptionStatement: description: A single variable declaration type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' assignment: oneOf: - - $ref: "#/components/schemas/VariableAssignment" - - $ref: "#/components/schemas/MemberAssignment" + - $ref: '#/components/schemas/VariableAssignment' + - $ref: '#/components/schemas/MemberAssignment' BuiltinStatement: description: Declares a builtin identifier and its type type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' id: - $ref: "#/components/schemas/Identifier" + $ref: '#/components/schemas/Identifier' TestStatement: description: Declares a Flux test case type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' assignment: - $ref: "#/components/schemas/VariableAssignment" + $ref: '#/components/schemas/VariableAssignment' 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" + - $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' ArrayExpression: description: Used to create and directly specify the elements of an array object type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' elements: description: Elements of the array type: array items: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' DictExpression: description: Used to create and directly specify the elements of a dictionary type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' elements: description: Elements of the dictionary type: array items: - $ref: "#/components/schemas/DictItem" + $ref: '#/components/schemas/DictItem' DictItem: description: A key/value pair in a dictionary type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' key: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' val: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' FunctionExpression: description: Function expression type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' params: description: Function parameters type: array items: - $ref: "#/components/schemas/Property" + $ref: '#/components/schemas/Property' body: - $ref: "#/components/schemas/Node" + $ref: '#/components/schemas/Node' BinaryExpression: description: uses binary operators to act on two operands in an expression type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' operator: type: string left: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' right: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' CallExpression: description: Represents a function call type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' callee: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' arguments: description: Function arguments type: array items: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' ConditionalExpression: - description: Selects one of two expressions, `Alternate` or `Consequent`, depending on a third boolean expression, `Test` + description: 'Selects one of two expressions, `Alternate` or `Consequent`, depending on a third boolean expression, `Test`' type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' test: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' alternate: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' consequent: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' LogicalExpression: description: Represents the rule conditions that collectively evaluate to either true or false type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' operator: type: string left: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' right: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' MemberExpression: description: Represents accessing a property of an object type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' object: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' property: - $ref: "#/components/schemas/PropertyKey" + $ref: '#/components/schemas/PropertyKey' IndexExpression: description: Represents indexing into an array type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' array: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' index: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' ObjectExpression: description: Allows the declaration of an anonymous object within a declaration type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' properties: description: Object properties type: array items: - $ref: "#/components/schemas/Property" + $ref: '#/components/schemas/Property' ParenExpression: description: Represents an expression wrapped in parenthesis type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' expression: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' PipeExpression: description: Call expression with pipe argument type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' argument: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' call: - $ref: "#/components/schemas/CallExpression" + $ref: '#/components/schemas/CallExpression' UnaryExpression: description: Uses operators to act on a single operand in an expression type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' operator: type: string argument: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' BooleanLiteral: description: Represents boolean values type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: boolean DateTimeLiteral: @@ -6937,7 +6891,7 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: string DurationLiteral: @@ -6945,18 +6899,18 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' values: description: Duration values type: array items: - $ref: "#/components/schemas/Duration" + $ref: '#/components/schemas/Duration' FloatLiteral: description: Represents floating point numbers according to the double representations defined by the IEEE-754-1985 type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: number IntegerLiteral: @@ -6964,21 +6918,21 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: string PipeLiteral: - description: Represents a specialized literal value, indicating the left hand value of a pipe expression + description: 'Represents a specialized literal value, indicating the left hand value of a pipe expression' type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' RegexpLiteral: description: Expressions begin and end with `/` and are regular expressions with syntax accepted by RE2 type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: string StringLiteral: @@ -6986,7 +6940,7 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: string UnsignedIntegerLiteral: @@ -6994,7 +6948,7 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: string Duration: @@ -7002,7 +6956,7 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' magnitude: type: integer unit: @@ -7012,114 +6966,60 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' key: - $ref: "#/components/schemas/PropertyKey" + $ref: '#/components/schemas/PropertyKey' value: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' PropertyKey: oneOf: - - $ref: "#/components/schemas/Identifier" - - $ref: "#/components/schemas/StringLiteral" + - $ref: '#/components/schemas/Identifier' + - $ref: '#/components/schemas/StringLiteral' Identifier: description: A valid Flux identifier type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' name: type: string - NodeType: - description: Type of AST node - type: string Dialect: - description: Dialect are options to change the default CSV output format; https://www.w3.org/TR/2015/REC-tabular-metadata-20151217/#dialect-descriptions + description: 'Dialect are options to change the default CSV output format; https://www.w3.org/TR/2015/REC-tabular-metadata-20151217/#dialect-descriptions' type: object properties: header: - description: If true, the results will contain a header row + description: 'If true, the results will contain a header row' type: boolean default: true delimiter: - description: Separator between cells; the default is , + description: 'Separator between cells; the default is ,' type: string - default: "," + default: ',' maxLength: 1 minLength: 1 annotations: - description: https://www.w3.org/TR/2015/REC-tabular-data-model-20151217/#columns + description: 'https://www.w3.org/TR/2015/REC-tabular-data-model-20151217/#columns' type: array uniqueItems: true items: type: string enum: - - "group" - - "datatype" - - "default" + - group + - datatype + - default commentPrefix: description: Character prefixed to comment strings type: string - default: "#" + default: '#' maxLength: 1 minLength: 0 dateTimeFormat: description: Format of timestamps type: string - default: "RFC3339" + default: RFC3339 enum: - RFC3339 - RFC3339Nano - Permission: - required: [action, resource] - properties: - action: - type: string - enum: - - read - - write - resource: - $ref: "#/components/schemas/Resource" - Resource: - type: object - required: [type] - properties: - type: - type: string - enum: - - authorizations - - buckets - - dashboards - - orgs - - sources - - tasks - - telegrafs - - users - - variables - - scrapers - - secrets - - labels - - views - - documents - - notificationRules - - notificationEndpoints - - checks - - dbrp - id: - type: string - nullable: true - description: If ID is set that is a permission for a specific resource. if it is not set it is a permission for all resources of that resource type. - name: - type: string - nullable: true - description: Optional name of the resource if the resource has a name field. - orgID: - type: string - nullable: true - description: If orgID is set that is a permission for all resources owned my that org. if it is not set it is a permission for all resources of that resource type. - org: - type: string - nullable: true - description: Optional name of the organization of the organization with orgID. AuthorizationUpdateRequest: properties: status: @@ -7132,71 +7032,6 @@ components: description: type: string description: A description of the token. - Authorization: - required: [orgID, permissions] - allOf: - - $ref: "#/components/schemas/AuthorizationUpdateRequest" - - type: object - properties: - createdAt: - type: string - format: date-time - readOnly: true - updatedAt: - type: string - format: date-time - readOnly: true - orgID: - type: string - description: ID of org that authorization is scoped to. - permissions: - type: array - minItems: 1 - description: List of permissions for an auth. An auth must have at least one Permission. - items: - $ref: "#/components/schemas/Permission" - id: - readOnly: true - type: string - token: - readOnly: true - type: string - description: Passed via the Authorization Header and Token Authentication type. - userID: - readOnly: true - type: string - description: ID of user that created and owns the token. - user: - readOnly: true - type: string - description: Name of user that created and owns the token. - org: - readOnly: true - type: string - description: Name of the org token is scoped to. - links: - type: object - readOnly: true - example: - self: "/api/v2/authorizations/1" - user: "/api/v2/users/12" - properties: - self: - readOnly: true - $ref: "#/components/schemas/Link" - user: - readOnly: true - $ref: "#/components/schemas/Link" - Authorizations: - type: object - properties: - links: - readOnly: true - $ref: "#/components/schemas/Links" - authorizations: - type: array - items: - $ref: "#/components/schemas/Authorization" PostBucketRequest: properties: orgID: @@ -7208,39 +7043,42 @@ components: rp: type: string retentionRules: - $ref: "#/components/schemas/RetentionRules" - required: [orgID, name, retentionRules] + $ref: '#/components/schemas/RetentionRules' + required: + - orgID + - name + - retentionRules Bucket: properties: links: type: object readOnly: true 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&bucket=1" + 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&bucket=1 properties: labels: description: URL to retrieve labels for this bucket - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: description: URL to retrieve members that can read this bucket - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' org: description: URL to retrieve parent organization for this bucket - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: description: URL to retrieve owners that can read and write to this bucket. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' self: description: URL for this bucket - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' write: description: URL to write line protocol for this bucket - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' id: readOnly: true type: string @@ -7268,25 +7106,27 @@ components: format: date-time readOnly: true retentionRules: - $ref: "#/components/schemas/RetentionRules" + $ref: '#/components/schemas/RetentionRules' labels: - $ref: "#/components/schemas/Labels" - required: [name, retentionRules] + $ref: '#/components/schemas/Labels' + required: + - name + - retentionRules Buckets: type: object properties: links: readOnly: true - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' buckets: type: array items: - $ref: "#/components/schemas/Bucket" + $ref: '#/components/schemas/Bucket' RetentionRules: type: array description: Rules to expire or retain data. No rules means data never expires. items: - $ref: "#/components/schemas/RetentionRule" + $ref: '#/components/schemas/RetentionRule' RetentionRule: type: object properties: @@ -7297,6 +7137,7 @@ components: - expire everySeconds: type: integer + format: int64 description: Duration in seconds for how long data will be kept in the database. 0 means infinite. example: 86400 minimum: 0 @@ -7304,7 +7145,9 @@ components: type: integer format: int64 description: Shard duration measured in seconds. - required: [type, everySeconds] + required: + - type + - everySeconds Link: type: string format: uri @@ -7314,12 +7157,13 @@ components: type: object properties: next: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' prev: - $ref: "#/components/schemas/Link" - required: [self] + $ref: '#/components/schemas/Link' + required: + - self Logs: type: object properties: @@ -7327,13 +7171,13 @@ components: readOnly: true type: array items: - $ref: "#/components/schemas/LogEvent" + $ref: '#/components/schemas/LogEvent' LogEvent: type: object properties: time: readOnly: true - description: Time event occurred, RFC3339Nano. + description: 'Time event occurred, RFC3339Nano.' type: string format: date-time message: @@ -7347,31 +7191,31 @@ components: type: object readOnly: true example: - self: "/api/v2/orgs/1" - members: "/api/v2/orgs/1/members" - owners: "/api/v2/orgs/1/owners" - labels: "/api/v2/orgs/1/labels" - secrets: "/api/v2/orgs/1/secrets" - buckets: "/api/v2/buckets?org=myorg" - tasks: "/api/v2/tasks?org=myorg" - dashboards: "/api/v2/dashboards?org=myorg" + self: /api/v2/orgs/1 + members: /api/v2/orgs/1/members + owners: /api/v2/orgs/1/owners + labels: /api/v2/orgs/1/labels + secrets: /api/v2/orgs/1/secrets + buckets: /api/v2/buckets?org=myorg + tasks: /api/v2/tasks?org=myorg + dashboards: /api/v2/dashboards?org=myorg properties: self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' secrets: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' buckets: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' tasks: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' dashboards: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' id: readOnly: true type: string @@ -7394,16 +7238,17 @@ components: enum: - active - inactive - required: [name] + required: + - name Organizations: type: object properties: links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' orgs: type: array items: - $ref: "#/components/schemas/Organization" + $ref: '#/components/schemas/Organization' TemplateApply: type: object properties: @@ -7423,7 +7268,7 @@ components: items: type: string contents: - $ref: "#/components/schemas/Template" + $ref: '#/components/schemas/Template' templates: type: array items: @@ -7436,7 +7281,7 @@ components: items: type: string contents: - $ref: "#/components/schemas/Template" + $ref: '#/components/schemas/Template' envRefs: type: object additionalProperties: @@ -7458,7 +7303,8 @@ components: type: string contentType: type: string - required: ["url"] + required: + - url actions: type: array items: @@ -7467,26 +7313,31 @@ components: properties: action: type: string - enum: ["skipKind"] + enum: + - skipKind properties: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" - required: ["kind"] + $ref: '#/components/schemas/TemplateKind' + required: + - kind - type: object properties: action: type: string - enum: ["skipResource"] + enum: + - skipResource properties: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' resourceTemplateName: type: string - required: ["kind", "resourceTemplateName"] + required: + - kind + - resourceTemplateName TemplateKind: type: string enum: @@ -7526,18 +7377,20 @@ components: byResourceKind: type: array items: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' resources: type: object properties: id: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' name: type: string - description: "if defined with id, name is used for resource exported by id. if defined independently, resources strictly matching name are exported" - required: [id, kind] + description: 'if defined with id, name is used for resource exported by id. if defined independently, resources strictly matching name are exported' + required: + - id + - kind TemplateExportByName: type: object properties: @@ -7560,15 +7413,17 @@ components: byResourceKind: type: array items: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' resources: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' name: type: string - required: [name, kind] + required: + - name + - kind Template: type: array items: @@ -7577,7 +7432,7 @@ components: apiVersion: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' meta: type: object properties: @@ -7612,7 +7467,9 @@ components: - type: integer - type: number - type: boolean - required: [resourceField, envRefKey] + required: + - resourceField + - envRefKey TemplateSummary: type: object properties: @@ -7635,7 +7492,7 @@ components: orgID: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string name: @@ -7647,57 +7504,57 @@ components: labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' checks: type: array items: allOf: - - $ref: "#/components/schemas/CheckDiscriminator" + - $ref: '#/components/schemas/CheckDiscriminator' - type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' dashboards: type: array items: type: object properties: id: - type: "string" + type: string orgID: - type: "string" + type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string name: - type: "string" + type: string description: - type: "string" + type: string labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' charts: type: array items: - $ref: "#/components/schemas/TemplateChart" + $ref: '#/components/schemas/TemplateChart' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' labels: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' labelMappings: type: array items: @@ -7731,26 +7588,26 @@ components: type: array items: allOf: - - $ref: "#/components/schemas/NotificationEndpointDiscrimator" + - $ref: '#/components/schemas/NotificationEndpointDiscrimator' - type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' notificationRules: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string name: @@ -7794,16 +7651,16 @@ components: labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' tasks: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string id: @@ -7823,31 +7680,31 @@ components: status: type: string envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' telegrafConfigs: type: array items: allOf: - - $ref: "#/components/schemas/TelegrafRequest" + - $ref: '#/components/schemas/TelegrafRequest' - type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' variables: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string id: @@ -7859,13 +7716,13 @@ components: description: type: string arguments: - $ref: "#/components/schemas/VariableProperties" + $ref: '#/components/schemas/VariableProperties' labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' diff: type: object properties: @@ -7875,7 +7732,7 @@ components: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -7890,7 +7747,7 @@ components: description: type: string retentionRules: - $ref: "#/components/schemas/RetentionRules" + $ref: '#/components/schemas/RetentionRules' old: type: object properties: @@ -7899,14 +7756,14 @@ components: description: type: string retentionRules: - $ref: "#/components/schemas/RetentionRules" + $ref: '#/components/schemas/RetentionRules' checks: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -7914,9 +7771,9 @@ components: templateMetaName: type: string new: - $ref: "#/components/schemas/CheckDiscriminator" + $ref: '#/components/schemas/CheckDiscriminator' old: - $ref: "#/components/schemas/CheckDiscriminator" + $ref: '#/components/schemas/CheckDiscriminator' dashboards: type: array items: @@ -7927,7 +7784,7 @@ components: id: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string new: @@ -7940,7 +7797,7 @@ components: charts: type: array items: - $ref: "#/components/schemas/TemplateChart" + $ref: '#/components/schemas/TemplateChart' old: type: object properties: @@ -7951,7 +7808,7 @@ components: charts: type: array items: - $ref: "#/components/schemas/TemplateChart" + $ref: '#/components/schemas/TemplateChart' labels: type: array items: @@ -7960,7 +7817,7 @@ components: stateStatus: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' id: type: string templateMetaName: @@ -8010,7 +7867,7 @@ components: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -8018,16 +7875,16 @@ components: templateMetaName: type: string new: - $ref: "#/components/schemas/NotificationEndpointDiscrimator" + $ref: '#/components/schemas/NotificationEndpointDiscrimator' old: - $ref: "#/components/schemas/NotificationEndpointDiscrimator" + $ref: '#/components/schemas/NotificationEndpointDiscrimator' notificationRules: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -8122,7 +7979,7 @@ components: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -8169,7 +8026,7 @@ components: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -8177,16 +8034,16 @@ components: templateMetaName: type: string new: - $ref: "#/components/schemas/TelegrafRequest" + $ref: '#/components/schemas/TelegrafRequest' old: - $ref: "#/components/schemas/TelegrafRequest" + $ref: '#/components/schemas/TelegrafRequest' variables: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -8201,7 +8058,7 @@ components: description: type: string args: - $ref: "#/components/schemas/VariableProperties" + $ref: '#/components/schemas/VariableProperties' old: type: object properties: @@ -8210,14 +8067,14 @@ components: description: type: string args: - $ref: "#/components/schemas/VariableProperties" + $ref: '#/components/schemas/VariableProperties' errors: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' reason: type: string fields: @@ -8236,7 +8093,7 @@ components: orgID: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string name: @@ -8249,7 +8106,7 @@ components: description: type: string envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' TemplateChart: type: object properties: @@ -8261,8 +8118,8 @@ components: type: integer width: type: integer - properties: # field name is properties - $ref: "#/components/schemas/ViewProperties" + properties: + $ref: '#/components/schemas/ViewProperties' Stack: type: object properties: @@ -8299,7 +8156,7 @@ components: resourceID: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string associations: @@ -8308,7 +8165,7 @@ components: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' metaName: type: string links: @@ -8328,11 +8185,11 @@ components: type: object properties: links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' runs: type: array items: - $ref: "#/components/schemas/Run" + $ref: '#/components/schemas/Run' Run: properties: id: @@ -8351,7 +8208,7 @@ components: - success - canceled scheduledFor: - description: Time used for run's "now" option, RFC3339. + description: 'Time used for run''s "now" option, RFC3339.' type: string format: date-time log: @@ -8369,26 +8226,26 @@ components: type: string startedAt: readOnly: true - description: Time run started executing, RFC3339Nano. + description: 'Time run started executing, RFC3339Nano.' type: string format: date-time finishedAt: readOnly: true - description: Time run finished executing, RFC3339Nano. + description: 'Time run finished executing, RFC3339Nano.' type: string format: date-time requestedAt: readOnly: true - description: Time run was manually requested, RFC3339Nano. + description: 'Time run was manually requested, RFC3339Nano.' type: string format: date-time links: type: object readOnly: true example: - self: "/api/v2/tasks/1/runs/1" - task: "/api/v2/tasks/1" - retry: "/api/v2/tasks/1/runs/1/retry" + self: /api/v2/tasks/1/runs/1 + task: /api/v2/tasks/1 + retry: /api/v2/tasks/1/runs/1/retry properties: self: type: string @@ -8403,7 +8260,7 @@ components: properties: scheduledFor: nullable: true - description: Time used for run's "now" option, RFC3339. Default is the server's now time. + description: 'Time used for run''s "now" option, RFC3339. Default is the server''s now time.' type: string format: date-time Tasks: @@ -8411,11 +8268,11 @@ components: properties: links: readOnly: true - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' tasks: type: array items: - $ref: "#/components/schemas/Task" + $ref: '#/components/schemas/Task' Task: type: object properties: @@ -8423,7 +8280,7 @@ components: readOnly: true type: string type: - description: The type of task, this can be used for filtering tasks on list actions. + description: 'The type of task, this can be used for filtering tasks on list actions.' type: string orgID: description: The ID of the organization that owns this Task. @@ -8438,9 +8295,9 @@ components: description: An optional description of the task. type: string status: - $ref: "#/components/schemas/TaskStatusType" + $ref: '#/components/schemas/TaskStatusType' labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' authorizationID: description: The ID of the authorization used when this task communicates with the query engine. type: string @@ -8454,10 +8311,10 @@ components: description: A task repetition schedule in the form '* * * * * *'; parsed from Flux. type: string offset: - description: Duration to delay after the schedule, before executing the task; parsed from flux, if set to zero it will remove this option and use 0 as the default. + description: 'Duration to delay after the schedule, before executing the task; parsed from flux, if set to zero it will remove this option and use 0 as the default.' type: string latestCompleted: - description: Timestamp of latest scheduled, completed run, RFC3339. + description: 'Timestamp of latest scheduled, completed run, RFC3339.' type: string format: date-time readOnly: true @@ -8483,30 +8340,36 @@ components: type: object readOnly: true example: - self: "/api/v2/tasks/1" - owners: "/api/v2/tasks/1/owners" - members: "/api/v2/tasks/1/members" - labels: "/api/v2/tasks/1/labels" - runs: "/api/v2/tasks/1/runs" - logs: "/api/v2/tasks/1/logs" + self: /api/v2/tasks/1 + owners: /api/v2/tasks/1/owners + members: /api/v2/tasks/1/members + labels: /api/v2/tasks/1/labels + runs: /api/v2/tasks/1/runs + logs: /api/v2/tasks/1/logs properties: self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' runs: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' logs: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: - $ref: "#/components/schemas/Link" - required: [id, name, orgID, flux] + $ref: '#/components/schemas/Link' + required: + - id + - name + - orgID + - flux TaskStatusType: type: string - enum: [active, inactive] - User: + enum: + - active + - inactive + UserResponse: properties: id: readOnly: true @@ -8526,31 +8389,19 @@ components: type: object readOnly: true example: - self: "/api/v2/users/1" + self: /api/v2/users/1 properties: self: type: string format: uri - required: [name] - Users: - type: object - properties: - links: - type: object - properties: - self: - type: string - format: uri - users: - type: array - items: - $ref: "#/components/schemas/User" + required: + - name Flags: type: object additionalProperties: true ResourceMember: allOf: - - $ref: "#/components/schemas/User" + - $ref: '#/components/schemas/UserResponse' - type: object properties: role: @@ -8570,10 +8421,10 @@ components: users: type: array items: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' ResourceOwner: allOf: - - $ref: "#/components/schemas/User" + - $ref: '#/components/schemas/UserResponse' - type: object properties: role: @@ -8593,14 +8444,14 @@ components: users: type: array items: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' FluxSuggestions: type: object properties: funcs: type: array items: - $ref: "#/components/schemas/FluxSuggestion" + $ref: '#/components/schemas/FluxSuggestion' FluxSuggestion: type: object properties: @@ -8693,10 +8544,9 @@ components: Error: properties: code: - description: Code is the machine-readable error code. + description: code is the machine-readable error code. readOnly: true type: string - # This set of enumerations must remain in sync with the constants defined in errors.go enum: - internal error - not found @@ -8709,11 +8559,22 @@ components: - too many requests - unauthorized - method not allowed + - request too large message: readOnly: true - description: Message is a human-readable message. + description: message is a human-readable message. type: string - required: [code, message] + op: + readOnly: true + description: op describes the logical code operation during error. Useful for debugging. + type: string + err: + readOnly: true + description: err is a stack of errors that occurred during processing of the request. Useful for debugging. + type: string + required: + - code + - message LineProtocolError: properties: code: @@ -8744,7 +8605,11 @@ components: description: First line within sent body containing malformed data type: integer format: int32 - required: [code, message, op, err] + required: + - code + - message + - op + - err LineProtocolLengthError: properties: code: @@ -8762,18 +8627,18 @@ components: description: Max length in bytes for a body of line-protocol. type: integer format: int32 - required: [code, message, maxLength] + required: + - code + - message + - maxLength Field: type: object properties: value: - description: >- - value is the value of the field. Meaning of the value is implied by - the `type` key + description: value is the value of the field. Meaning of the value is implied by the `type` key type: string type: - description: >- - `type` describes the field type. `func` is a function. `field` is a field reference. + description: '`type` describes the field type. `func` is a function. `field` is a field reference.' type: string enum: - func @@ -8783,15 +8648,13 @@ components: - regex - wildcard alias: - description: >- - Alias overrides the field name in the returned response. Applies only - if type is `func` + description: Alias overrides the field name in the returned response. Applies only if type is `func` type: string args: description: Args are the arguments to the function type: array items: - $ref: "#/components/schemas/Field" + $ref: '#/components/schemas/Field' BuilderConfig: type: object properties: @@ -8802,11 +8665,11 @@ components: tags: type: array items: - $ref: "#/components/schemas/BuilderTagsType" + $ref: '#/components/schemas/BuilderTagsType' functions: type: array items: - $ref: "#/components/schemas/BuilderFunctionsType" + $ref: '#/components/schemas/BuilderFunctionsType' aggregateWindow: type: object properties: @@ -8824,10 +8687,12 @@ components: items: type: string aggregateFunctionType: - $ref: "#/components/schemas/BuilderAggregateFunctionType" + $ref: '#/components/schemas/BuilderAggregateFunctionType' BuilderAggregateFunctionType: type: string - enum: ["filter", "group"] + enum: + - filter + - group BuilderFunctionsType: type: object properties: @@ -8840,14 +8705,16 @@ components: type: string description: The text of the Flux query. editMode: - $ref: "#/components/schemas/QueryEditMode" + $ref: '#/components/schemas/QueryEditMode' name: type: string builderConfig: - $ref: "#/components/schemas/BuilderConfig" + $ref: '#/components/schemas/BuilderConfig' QueryEditMode: type: string - enum: ["builder", "advanced"] + enum: + - builder + - advanced Axis: type: object description: The description of a particular axis for a visualization. @@ -8856,9 +8723,7 @@ components: type: array minItems: 0 maxItems: 2 - description: >- - The extents of an axis in the form [lower, upper]. Clients determine - whether bounds are to be inclusive or exclusive of their limits + description: 'The extents of an axis in the form [lower, upper]. Clients determine whether bounds are to be inclusive or exclusive of their limits' items: type: string label: @@ -8873,17 +8738,27 @@ components: base: description: Base represents the radix for formatting axis values. type: string - enum: ["", "2", "10"] + enum: + - '' + - '2' + - '10' scale: - $ref: "#/components/schemas/AxisScale" + $ref: '#/components/schemas/AxisScale' AxisScale: description: 'Scale is the axis formatting scale. Supported: "log", "linear"' type: string - enum: ["log", "linear"] + enum: + - log + - linear DashboardColor: type: object description: Defines an encoding of data value into color space. - required: [id, type, hex, name, value] + required: + - id + - type + - hex + - name + - value properties: id: description: The unique ID of the view color. @@ -8933,7 +8808,6 @@ components: - shape - axes - colors - - legend - note - showNoteWhenEmpty - position @@ -8942,28 +8816,32 @@ components: type: string type: type: string - enum: [xy] + enum: + - xy queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean axes: - $ref: "#/components/schemas/Axes" + $ref: '#/components/schemas/Axes' + staticLegend: + $ref: '#/components/schemas/StaticLegend' legend: - $ref: "#/components/schemas/Legend" + $ref: '#/components/schemas/Legend' xColumn: type: string generateXAxisTicks: @@ -8996,12 +8874,18 @@ components: type: boolean hoverDimension: type: string - enum: [auto, x, y, xy] + enum: + - auto + - x + - 'y' + - xy position: type: string - enum: [overlaid, stacked] + enum: + - overlaid + - stacked geom: - $ref: "#/components/schemas/XYGeom" + $ref: '#/components/schemas/XYGeom' legendColorizeRows: type: boolean legendOpacity: @@ -9011,7 +8895,12 @@ components: type: integer XYGeom: type: string - enum: [line, step, stacked, bar, monotoneX] + enum: + - line + - step + - stacked + - bar + - monotoneX BandViewProperties: type: object required: @@ -9021,7 +8910,6 @@ components: - shape - axes - colors - - legend - note - showNoteWhenEmpty properties: @@ -9029,28 +8917,32 @@ components: type: string type: type: string - enum: [band] + enum: + - band queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean axes: - $ref: "#/components/schemas/Axes" + $ref: '#/components/schemas/Axes' legend: - $ref: "#/components/schemas/Legend" + $ref: '#/components/schemas/Legend' + staticLegend: + $ref: '#/components/schemas/StaticLegend' xColumn: type: string generateXAxisTicks: @@ -9087,9 +8979,13 @@ components: type: string hoverDimension: type: string - enum: [auto, x, y, xy] + enum: + - auto + - x + - 'y' + - xy geom: - $ref: "#/components/schemas/XYGeom" + $ref: '#/components/schemas/XYGeom' legendColorizeRows: type: boolean legendOpacity: @@ -9105,7 +9001,6 @@ components: - shape - axes - colors - - legend - note - showNoteWhenEmpty - prefix @@ -9117,28 +9012,32 @@ components: type: string type: type: string - enum: [line-plus-single-stat] + enum: + - line-plus-single-stat queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean axes: - $ref: "#/components/schemas/Axes" + $ref: '#/components/schemas/Axes' + staticLegend: + $ref: '#/components/schemas/StaticLegend' legend: - $ref: "#/components/schemas/Legend" + $ref: '#/components/schemas/Legend' xColumn: type: string generateXAxisTicks: @@ -9171,16 +9070,22 @@ components: type: boolean hoverDimension: type: string - enum: [auto, x, y, xy] + enum: + - auto + - x + - 'y' + - xy position: type: string - enum: [overlaid, stacked] + enum: + - overlaid + - stacked prefix: type: string suffix: type: string decimalPlaces: - $ref: "#/components/schemas/DecimalPlaces" + $ref: '#/components/schemas/DecimalPlaces' legendColorizeRows: type: boolean legendOpacity: @@ -9213,11 +9118,12 @@ components: type: string type: type: string - enum: [mosaic] + enum: + - mosaic queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array @@ -9225,11 +9131,12 @@ components: type: string shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean xColumn: type: string @@ -9283,7 +9190,11 @@ components: type: string hoverDimension: type: string - enum: [auto, x, y, xy] + enum: + - auto + - x + - 'y' + - xy legendColorizeRows: type: boolean legendOpacity: @@ -9317,11 +9228,12 @@ components: type: string type: type: string - enum: [scatter] + enum: + - scatter queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array @@ -9329,11 +9241,12 @@ components: type: string shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean xColumn: type: string @@ -9425,11 +9338,12 @@ components: type: string type: type: string - enum: [heatmap] + enum: + - heatmap queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array @@ -9437,11 +9351,12 @@ components: type: string shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean xColumn: type: string @@ -9515,28 +9430,29 @@ components: - tickPrefix - suffix - tickSuffix - - legend - decimalPlaces properties: type: type: string - enum: [single-stat] + enum: + - single-stat queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean prefix: type: string @@ -9546,10 +9462,12 @@ components: type: string tickSuffix: type: string + staticLegend: + $ref: '#/components/schemas/StaticLegend' legend: - $ref: "#/components/schemas/Legend" + $ref: '#/components/schemas/Legend' decimalPlaces: - $ref: "#/components/schemas/DecimalPlaces" + $ref: '#/components/schemas/DecimalPlaces' HistogramViewProperties: type: object required: @@ -9568,23 +9486,25 @@ components: properties: type: type: string - enum: [histogram] + enum: + - histogram queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean xColumn: type: string @@ -9601,7 +9521,9 @@ components: type: string position: type: string - enum: [overlaid, stacked] + enum: + - overlaid + - stacked binCount: type: integer legendColorizeRows: @@ -9614,40 +9536,39 @@ components: GaugeViewProperties: type: object required: - [ - type, - queries, - colors, - shape, - note, - showNoteWhenEmpty, - prefix, - tickPrefix, - suffix, - tickSuffix, - legend, - decimalPlaces, - ] + - type + - queries + - colors + - shape + - note + - showNoteWhenEmpty + - prefix + - tickPrefix + - suffix + - tickSuffix + - decimalPlaces properties: type: type: string - enum: [gauge] + enum: + - gauge queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean prefix: type: string @@ -9657,10 +9578,12 @@ components: type: string tickSuffix: type: string + staticLegend: + $ref: '#/components/schemas/StaticLegend' legend: - $ref: "#/components/schemas/Legend" + $ref: '#/components/schemas/Legend' decimalPlaces: - $ref: "#/components/schemas/DecimalPlaces" + $ref: '#/components/schemas/DecimalPlaces' TableViewProperties: type: object required: @@ -9677,33 +9600,33 @@ components: properties: type: type: string - enum: [table] + enum: + - table queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean tableOptions: properties: verticalTimeAxis: - description: >- - verticalTimeAxis describes the orientation of the table by - indicating whether the time axis will be displayed vertically + description: verticalTimeAxis describes the orientation of the table by indicating whether the time axis will be displayed vertically type: boolean sortBy: - $ref: "#/components/schemas/RenamableField" + $ref: '#/components/schemas/RenamableField' wrapping: description: Wrapping describes the text wrapping style to be used in table views type: string @@ -9712,24 +9635,18 @@ components: - wrap - single-line fixFirstColumn: - description: >- - fixFirstColumn indicates whether the first column of the table - should be locked + description: fixFirstColumn indicates whether the first column of the table should be locked type: boolean fieldOptions: - description: >- - fieldOptions represent the fields retrieved by the query with - customization options + description: fieldOptions represent the fields retrieved by the query with customization options type: array items: - $ref: "#/components/schemas/RenamableField" + $ref: '#/components/schemas/RenamableField' timeFormat: - description: >- - timeFormat describes the display format for time values according to - moment.js date formatting + description: timeFormat describes the display format for time values according to moment.js date formatting type: string decimalPlaces: - $ref: "#/components/schemas/DecimalPlaces" + $ref: '#/components/schemas/DecimalPlaces' MarkdownViewProperties: type: object required: @@ -9739,10 +9656,12 @@ components: properties: type: type: string - enum: [markdown] + enum: + - markdown shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string CheckViewProperties: @@ -9756,23 +9675,25 @@ components: properties: type: type: string - enum: [check] + enum: + - check shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 checkID: type: string check: - $ref: "#/components/schemas/Check" + $ref: '#/components/schemas/Check' queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' legendColorizeRows: type: boolean legendOpacity: @@ -9783,22 +9704,32 @@ components: GeoViewLayer: type: object oneOf: - - $ref: "#/components/schemas/GeoCircleViewLayer" - - $ref: "#/components/schemas/GeoHeatMapViewLayer" - - $ref: "#/components/schemas/GeoPointMapViewLayer" - - $ref: "#/components/schemas/GeoTrackMapViewLayer" + - $ref: '#/components/schemas/GeoCircleViewLayer' + - $ref: '#/components/schemas/GeoHeatMapViewLayer' + - $ref: '#/components/schemas/GeoPointMapViewLayer' + - $ref: '#/components/schemas/GeoTrackMapViewLayer' GeoViewLayerProperties: type: object - required: [type] + required: + - type properties: type: type: string - enum: [heatmap, circleMap, pointMap, trackMap] + enum: + - heatmap + - circleMap + - pointMap + - trackMap GeoCircleViewLayer: allOf: - - $ref: "#/components/schemas/GeoViewLayerProperties" + - $ref: '#/components/schemas/GeoViewLayerProperties' - type: object - required: [radiusField, radiusDimension, colorField, colorDimension, colors] + required: + - radiusField + - radiusDimension + - colorField + - colorDimension + - colors properties: radiusField: type: string @@ -9814,7 +9745,7 @@ components: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' radius: description: Maximum radius size in pixels type: integer @@ -9823,9 +9754,12 @@ components: type: boolean GeoPointMapViewLayer: allOf: - - $ref: "#/components/schemas/GeoViewLayerProperties" + - $ref: '#/components/schemas/GeoViewLayerProperties' - type: object - required: [colorField, colorDimension, colors] + required: + - colorField + - colorDimension + - colors properties: colorField: type: string @@ -9836,15 +9770,19 @@ components: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' isClustered: description: Cluster close markers together type: boolean GeoTrackMapViewLayer: allOf: - - $ref: "#/components/schemas/GeoViewLayerProperties" + - $ref: '#/components/schemas/GeoViewLayerProperties' - type: object - required: [trackWidth, speed, randomColors, trackPointVisualization] + required: + - trackWidth + - speed + - randomColors + - trackPointVisualization properties: trackWidth: description: Width of the track @@ -9859,12 +9797,17 @@ components: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' GeoHeatMapViewLayer: allOf: - - $ref: "#/components/schemas/GeoViewLayerProperties" + - $ref: '#/components/schemas/GeoViewLayerProperties' - type: object - required: [intensityField, intensityDimension, radius, blur, colors] + required: + - intensityField + - intensityDimension + - radius + - blur + - colors properties: intensityField: type: string @@ -9881,25 +9824,39 @@ components: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' GeoViewProperties: type: object - required: [type, shape, queries, note, showNoteWhenEmpty, center, zoom, allowPanAndZoom, detectCoordinateFields, layers] + required: + - type + - shape + - queries + - note + - showNoteWhenEmpty + - center + - zoom + - allowPanAndZoom + - detectCoordinateFields + - layers properties: type: type: string - enum: [geo] + enum: + - geo queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' shape: type: string - enum: ['chronograf-v2'] + enum: + - chronograf-v2 center: description: Coordinates of the center of the map type: object - required: [lat, lon] + required: + - lat + - lon properties: lat: description: Latitude of the center of the map @@ -9916,43 +9873,65 @@ components: minimum: 1 maximum: 28 allowPanAndZoom: - description: If true, map zoom and pan controls are enabled on the dashboard view + description: 'If true, map zoom and pan controls are enabled on the dashboard view' type: boolean default: true detectCoordinateFields: - description: If true, search results get automatically regroupped so that lon,lat and value are treated as columns + description: 'If true, search results get automatically regroupped so that lon,lat and value are treated as columns' type: boolean default: true mapStyle: - description: Define map type - regular, satellite etc. + description: 'Define map type - regular, satellite etc.' type: string note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' layers: description: List of individual layers shown in the map type: array items: - $ref: "#/components/schemas/GeoViewLayer" + $ref: '#/components/schemas/GeoViewLayer' Axes: description: The viewport for a View's visualizations type: object - required: ["x", "y"] + required: + - x + - 'y' properties: x: - $ref: "#/components/schemas/Axis" - "y": # Quoted to prevent YAML parser from interpreting y as shorthand for true. - $ref: "#/components/schemas/Axis" + $ref: '#/components/schemas/Axis' + 'y': + $ref: '#/components/schemas/Axis' + StaticLegend: + description: StaticLegend represents the options specific to the static legend + type: object + properties: + colorizeRows: + type: boolean + heightRatio: + type: number + format: float + opacity: + type: number + format: float + orientationThreshold: + type: integer + valueAxis: + type: string + widthRatio: + type: number + format: float Legend: description: Legend define encoding of data into a view's legend type: object + deprecated: true properties: type: description: The style of the legend. @@ -9960,9 +9939,7 @@ components: enum: - static orientation: - description: >- - orientation is the location of the legend with respect to the view - graph + description: orientation is the location of the legend with respect to the view graph type: string enum: - top @@ -9970,7 +9947,7 @@ components: - left - right DecimalPlaces: - description: Indicates whether decimal places should be enforced, and how many digits it should show. + description: 'Indicates whether decimal places should be enforced, and how many digits it should show.' type: object properties: isEnforced: @@ -9984,7 +9961,8 @@ components: properties: type: type: string - enum: [constant] + enum: + - constant values: type: array items: @@ -9993,7 +9971,8 @@ components: properties: type: type: string - enum: [map] + enum: + - map values: type: object additionalProperties: @@ -10002,7 +9981,8 @@ components: properties: type: type: string - enum: [query] + enum: + - query values: type: object properties: @@ -10010,109 +9990,27 @@ components: type: string language: type: string - Variable: - type: object - required: - - name - - orgID - - arguments - properties: - links: - type: object - readOnly: true - properties: - self: - type: string - format: uri - org: - type: string - format: uri - labels: - type: string - format: uri - id: - readOnly: true - type: string - orgID: - type: string - name: - type: string - description: - type: string - selected: - type: array - items: - type: string - labels: - $ref: "#/components/schemas/Labels" - arguments: - $ref: "#/components/schemas/VariableProperties" - createdAt: - type: string - format: date-time - updatedAt: - type: string - format: date-time - Variables: - type: object - example: - variables: - - id: "1221432" - name: ":ok:" - selected: - - hello - arguments: - type: constant - values: - - howdy - - hello - - hi - - yo - - oy - - id: "1221432" - name: ":ok:" - selected: - - c - arguments: - type: map - values: - a: fdjaklfdjkldsfjlkjdsa - b: dfaksjfkljekfajekdljfas - c: fdjksajfdkfeawfeea - - id: "1221432" - name: ":ok:" - selected: - - host - arguments: - type: query - query: 'from(bucket: "foo") |> showMeasurements()' - language: flux - properties: - variables: - type: array - items: - $ref: "#/components/schemas/Variable" VariableProperties: type: object oneOf: - - $ref: "#/components/schemas/QueryVariableProperties" - - $ref: "#/components/schemas/ConstantVariableProperties" - - $ref: "#/components/schemas/MapVariableProperties" + - $ref: '#/components/schemas/QueryVariableProperties' + - $ref: '#/components/schemas/ConstantVariableProperties' + - $ref: '#/components/schemas/MapVariableProperties' 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" + - $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' View: required: - name @@ -10130,7 +10028,7 @@ components: name: type: string properties: - $ref: "#/components/schemas/ViewProperties" + $ref: '#/components/schemas/ViewProperties' Views: type: object properties: @@ -10142,14 +10040,14 @@ components: views: type: array items: - $ref: "#/components/schemas/View" + $ref: '#/components/schemas/View' CellUpdate: type: object properties: x: type: integer format: int32 - "y": # Quoted to prevent YAML parser from interpreting y as shorthand for true. + 'y': type: integer format: int32 w: @@ -10166,7 +10064,7 @@ components: x: type: integer format: int32 - "y": # Quoted to prevent YAML parser from interpreting y as shorthand for true. + 'y': type: integer format: int32 w: @@ -10197,13 +10095,13 @@ components: CellWithViewProperties: type: object allOf: - - $ref: "#/components/schemas/Cell" + - $ref: '#/components/schemas/Cell' - type: object properties: name: type: string properties: - $ref: "#/components/schemas/ViewProperties" + $ref: '#/components/schemas/ViewProperties' Cell: type: object properties: @@ -10219,7 +10117,7 @@ components: x: type: integer format: int32 - "y": # Quoted to prevent YAML parser from interpreting y as shorthand for true. + 'y': type: integer format: int32 w: @@ -10234,11 +10132,11 @@ components: CellsWithViewProperties: type: array items: - $ref: "#/components/schemas/CellWithViewProperties" + $ref: '#/components/schemas/CellWithViewProperties' Cells: type: array items: - $ref: "#/components/schemas/Cell" + $ref: '#/components/schemas/Cell' Secrets: additionalProperties: type: string @@ -10253,7 +10151,7 @@ components: type: string SecretKeysResponse: allOf: - - $ref: "#/components/schemas/SecretKeys" + - $ref: '#/components/schemas/SecretKeys' - type: object properties: links: @@ -10281,31 +10179,31 @@ components: DashboardWithViewProperties: type: object allOf: - - $ref: "#/components/schemas/CreateDashboardRequest" + - $ref: '#/components/schemas/CreateDashboardRequest' - type: object properties: links: type: object example: - self: "/api/v2/dashboards/1" - cells: "/api/v2/dashboards/1/cells" - owners: "/api/v2/dashboards/1/owners" - members: "/api/v2/dashboards/1/members" - labels: "/api/v2/dashboards/1/labels" - org: "/api/v2/labels/1" + self: /api/v2/dashboards/1 + cells: /api/v2/dashboards/1/cells + owners: /api/v2/dashboards/1/owners + members: /api/v2/dashboards/1/members + labels: /api/v2/dashboards/1/labels + org: /api/v2/labels/1 properties: self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' cells: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' org: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' id: readOnly: true type: string @@ -10319,37 +10217,37 @@ components: type: string format: date-time cells: - $ref: "#/components/schemas/CellsWithViewProperties" + $ref: '#/components/schemas/CellsWithViewProperties' labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' Dashboard: type: object allOf: - - $ref: "#/components/schemas/CreateDashboardRequest" + - $ref: '#/components/schemas/CreateDashboardRequest' - type: object properties: links: type: object example: - self: "/api/v2/dashboards/1" - cells: "/api/v2/dashboards/1/cells" - owners: "/api/v2/dashboards/1/owners" - members: "/api/v2/dashboards/1/members" - labels: "/api/v2/dashboards/1/labels" - org: "/api/v2/labels/1" + self: /api/v2/dashboards/1 + cells: /api/v2/dashboards/1/cells + owners: /api/v2/dashboards/1/owners + members: /api/v2/dashboards/1/members + labels: /api/v2/dashboards/1/labels + org: /api/v2/labels/1 properties: self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' cells: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' org: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' id: readOnly: true type: string @@ -10363,18 +10261,18 @@ components: type: string format: date-time cells: - $ref: "#/components/schemas/Cells" + $ref: '#/components/schemas/Cells' labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' Dashboards: type: object properties: links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' dashboards: type: array items: - $ref: "#/components/schemas/Dashboard" + $ref: '#/components/schemas/Dashboard' Source: type: object properties: @@ -10399,7 +10297,10 @@ components: type: string type: type: string - enum: ["v1", "v2", "self"] + enum: + - v1 + - v2 + - self url: type: string format: uri @@ -10440,7 +10341,7 @@ components: sources: type: array items: - $ref: "#/components/schemas/Source" + $ref: '#/components/schemas/Source' ScraperTargetRequest: type: object properties: @@ -10450,11 +10351,12 @@ components: type: type: string description: The type of the metrics to be parsed. - enum: [prometheus] + enum: + - prometheus url: type: string description: The URL of the metrics endpoint. - example: http://localhost:9090/metrics + example: 'http://localhost:9090/metrics' orgID: type: string description: The organization ID. @@ -10468,7 +10370,7 @@ components: ScraperTargetResponse: type: object allOf: - - $ref: "#/components/schemas/ScraperTargetRequest" + - $ref: '#/components/schemas/ScraperTargetRequest' - type: object properties: id: @@ -10484,29 +10386,29 @@ components: type: object readOnly: true example: - self: "/api/v2/scrapers/1" - owners: "/api/v2/scrapers/1/owners" - members: "/api/v2/scrapers/1/members" - bucket: "/api/v2/buckets/1" - organization: "/api/v2/orgs/1" + self: /api/v2/scrapers/1 + owners: /api/v2/scrapers/1/owners + members: /api/v2/scrapers/1/members + bucket: /api/v2/buckets/1 + organization: /api/v2/orgs/1 properties: self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' bucket: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' organization: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' ScraperTargetResponses: type: object properties: configurations: type: array items: - $ref: "#/components/schemas/ScraperTargetResponse" + $ref: '#/components/schemas/ScraperTargetResponse' DocumentMeta: type: object properties: @@ -10538,20 +10440,20 @@ components: type: string readOnly: true meta: - $ref: "#/components/schemas/DocumentMeta" + $ref: '#/components/schemas/DocumentMeta' content: type: object labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' links: type: object readOnly: true example: - self: "/api/v2/documents/templates/1" + self: /api/v2/documents/templates/1 properties: self: description: The document URL. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' required: - id - meta @@ -10560,7 +10462,7 @@ components: type: object properties: meta: - $ref: "#/components/schemas/DocumentMeta" + $ref: '#/components/schemas/DocumentMeta' content: type: object org: @@ -10581,7 +10483,7 @@ components: type: object properties: meta: - $ref: "#/components/schemas/DocumentMeta" + $ref: '#/components/schemas/DocumentMeta' content: type: object DocumentListEntry: @@ -10591,18 +10493,18 @@ components: type: string readOnly: true meta: - $ref: "#/components/schemas/DocumentMeta" + $ref: '#/components/schemas/DocumentMeta' labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' links: type: object readOnly: true example: - self: "/api/v2/documents/templates/1" + self: /api/v2/documents/templates/1 properties: self: description: The document URL. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' required: - id - meta @@ -10612,7 +10514,7 @@ components: documents: type: array items: - $ref: "#/components/schemas/DocumentListEntry" + $ref: '#/components/schemas/DocumentListEntry' TelegrafRequest: type: object properties: @@ -10633,19 +10535,19 @@ components: type: string TelegrafRequestPlugin: oneOf: - - $ref: "#/components/schemas/TelegrafPluginInputCpu" - - $ref: "#/components/schemas/TelegrafPluginInputDisk" - - $ref: "#/components/schemas/TelegrafPluginInputDiskio" - - $ref: "#/components/schemas/TelegrafPluginInputDocker" - - $ref: "#/components/schemas/TelegrafPluginInputFile" - - $ref: "#/components/schemas/TelegrafPluginInputKubernetes" - - $ref: "#/components/schemas/TelegrafPluginInputLogParser" - - $ref: "#/components/schemas/TelegrafPluginInputProcstat" - - $ref: "#/components/schemas/TelegrafPluginInputPrometheus" - - $ref: "#/components/schemas/TelegrafPluginInputRedis" - - $ref: "#/components/schemas/TelegrafPluginInputSyslog" - - $ref: "#/components/schemas/TelegrafPluginOutputFile" - - $ref: "#/components/schemas/TelegrafPluginOutputInfluxDBV2" + - $ref: '#/components/schemas/TelegrafPluginInputCpu' + - $ref: '#/components/schemas/TelegrafPluginInputDisk' + - $ref: '#/components/schemas/TelegrafPluginInputDiskio' + - $ref: '#/components/schemas/TelegrafPluginInputDocker' + - $ref: '#/components/schemas/TelegrafPluginInputFile' + - $ref: '#/components/schemas/TelegrafPluginInputKubernetes' + - $ref: '#/components/schemas/TelegrafPluginInputLogParser' + - $ref: '#/components/schemas/TelegrafPluginInputProcstat' + - $ref: '#/components/schemas/TelegrafPluginInputPrometheus' + - $ref: '#/components/schemas/TelegrafPluginInputRedis' + - $ref: '#/components/schemas/TelegrafPluginInputSyslog' + - $ref: '#/components/schemas/TelegrafPluginOutputFile' + - $ref: '#/components/schemas/TelegrafPluginOutputInfluxDBV2' TelegrafPluginInputCpu: type: object required: @@ -10654,10 +10556,12 @@ components: properties: name: type: string - enum: ["cpu"] + enum: + - cpu type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputDisk: @@ -10668,10 +10572,12 @@ components: properties: name: type: string - enum: ["disk"] + enum: + - disk type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputDiskio: @@ -10682,10 +10588,12 @@ components: properties: name: type: string - enum: ["diskio"] + enum: + - diskio type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputDocker: @@ -10697,14 +10605,16 @@ components: properties: name: type: string - enum: ["docker"] + enum: + - docker type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputDockerConfig" + $ref: '#/components/schemas/TelegrafPluginInputDockerConfig' TelegrafPluginInputFile: type: object required: @@ -10714,14 +10624,16 @@ components: properties: name: type: string - enum: ["file"] + enum: + - file type: type: string - enum: [input] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputFileConfig" + $ref: '#/components/schemas/TelegrafPluginInputFileConfig' TelegrafPluginInputKernel: type: object required: @@ -10730,10 +10642,12 @@ components: properties: name: type: string - enum: ["kernel"] + enum: + - kernel type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputKubernetes: @@ -10745,14 +10659,16 @@ components: properties: name: type: string - enum: ["kubernetes"] + enum: + - kubernetes type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputKubernetesConfig" + $ref: '#/components/schemas/TelegrafPluginInputKubernetesConfig' TelegrafPluginInputLogParser: type: object required: @@ -10762,14 +10678,16 @@ components: properties: name: type: string - enum: ["logparser"] + enum: + - logparser type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputLogParserConfig" + $ref: '#/components/schemas/TelegrafPluginInputLogParserConfig' TelegrafPluginInputMem: type: object required: @@ -10778,10 +10696,12 @@ components: properties: name: type: string - enum: ["mem"] + enum: + - mem type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputNetResponse: @@ -10792,10 +10712,12 @@ components: properties: name: type: string - enum: ["net_response"] + enum: + - net_response type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputNet: @@ -10806,10 +10728,12 @@ components: properties: name: type: string - enum: ["net"] + enum: + - net type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputNginx: @@ -10820,10 +10744,12 @@ components: properties: name: type: string - enum: ["nginx"] + enum: + - nginx type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputProcesses: @@ -10834,10 +10760,12 @@ components: properties: name: type: string - enum: ["processes"] + enum: + - processes type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputProcstat: @@ -10849,14 +10777,16 @@ components: properties: name: type: string - enum: ["procstat"] + enum: + - procstat type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputProcstatConfig" + $ref: '#/components/schemas/TelegrafPluginInputProcstatConfig' TelegrafPluginInputPrometheus: type: object required: @@ -10866,14 +10796,16 @@ components: properties: name: type: string - enum: ["prometheus"] + enum: + - prometheus type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputPrometheusConfig" + $ref: '#/components/schemas/TelegrafPluginInputPrometheusConfig' TelegrafPluginInputRedis: type: object required: @@ -10883,14 +10815,16 @@ components: properties: name: type: string - enum: ["redis"] + enum: + - redis type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputRedisConfig" + $ref: '#/components/schemas/TelegrafPluginInputRedisConfig' TelegrafPluginInputSyslog: type: object required: @@ -10900,14 +10834,16 @@ components: properties: name: type: string - enum: ["syslog"] + enum: + - syslog type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputSyslogConfig" + $ref: '#/components/schemas/TelegrafPluginInputSyslogConfig' TelegrafPluginInputSwap: type: object required: @@ -10916,10 +10852,12 @@ components: properties: name: type: string - enum: ["swap"] + enum: + - swap type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputSystem: @@ -10930,10 +10868,12 @@ components: properties: name: type: string - enum: ["system"] + enum: + - system type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputTail: @@ -10944,10 +10884,12 @@ components: properties: name: type: string - enum: ["tail"] + enum: + - tail type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginOutputFile: @@ -10959,14 +10901,16 @@ components: properties: name: type: string - enum: ["file"] + enum: + - file type: type: string - enum: ["output"] + enum: + - output comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginOutputFileConfig" + $ref: '#/components/schemas/TelegrafPluginOutputFileConfig' TelegrafPluginOutputInfluxDBV2: type: object required: @@ -10976,18 +10920,20 @@ components: properties: name: type: string - enum: ["influxdb_v2"] + enum: + - influxdb_v2 type: type: string - enum: ["output"] + enum: + - output comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginOutputInfluxDBV2Config" + $ref: '#/components/schemas/TelegrafPluginOutputInfluxDBV2Config' Telegraf: type: object allOf: - - $ref: "#/components/schemas/TelegrafRequest" + - $ref: '#/components/schemas/TelegrafRequest' - type: object properties: id: @@ -10997,29 +10943,29 @@ components: type: object readOnly: true example: - self: "/api/v2/telegrafs/1" - lables: "/api/v2/telegrafs/1/labels" - owners: "/api/v2/telegrafs/1/owners" - members: "/api/v2/telegrafs/1/members" + self: /api/v2/telegrafs/1 + lables: /api/v2/telegrafs/1/labels + owners: /api/v2/telegrafs/1/owners + members: /api/v2/telegrafs/1/members properties: self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: readOnly: true - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' Telegrafs: type: object properties: configurations: type: array items: - $ref: "#/components/schemas/Telegraf" + $ref: '#/components/schemas/Telegraf' TelegrafPlugin: type: object properties: @@ -11041,7 +10987,7 @@ components: plugins: type: array items: - $ref: "#/components/schemas/TelegrafPlugin" + $ref: '#/components/schemas/TelegrafPlugin' TelegrafPluginInputDockerConfig: type: object required: @@ -11108,7 +11054,9 @@ components: properties: type: type: string - enum: [stdout, path] + enum: + - stdout + - path path: type: string TelegrafPluginOutputInfluxDBV2Config: @@ -11136,40 +11084,6 @@ components: allowed: description: True means that the influxdb instance has NOT had initial setup; false means that the database has been setup. type: boolean - OnboardingRequest: - type: object - properties: - username: - type: string - password: - type: string - org: - type: string - bucket: - type: string - retentionPeriodSeconds: - type: integer - retentionPeriodHrs: - type: integer - 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` - required: - - username - - org - - bucket - OnboardingResponse: - type: object - properties: - user: - $ref: "#/components/schemas/User" - org: - $ref: "#/components/schemas/Organization" - bucket: - $ref: "#/components/schemas/Bucket" - auth: - $ref: "#/components/schemas/Authorization" PasswordResetBody: properties: password: @@ -11195,10 +11109,10 @@ components: started: type: string format: date-time - example: "2019-03-13T10:09:33.891196-04:00" + example: '2019-03-13T10:09:33.891196-04:00' up: type: string - example: "14m45.911966424s" + example: 14m45.911966424s HealthCheck: type: object required: @@ -11212,7 +11126,7 @@ components: checks: type: array items: - $ref: "#/components/schemas/HealthCheck" + $ref: '#/components/schemas/HealthCheck' status: type: string enum: @@ -11225,7 +11139,7 @@ components: Labels: type: array items: - $ref: "#/components/schemas/Label" + $ref: '#/components/schemas/Label' Label: type: object properties: @@ -11242,10 +11156,14 @@ components: 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" } + example: + color: ffb3b3 + description: this is a description LabelCreateRequest: type: object - required: [orgID, name] + required: + - orgID + - name properties: orgID: type: string @@ -11256,7 +11174,9 @@ components: 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" } + example: + color: ffb3b3 + description: this is a description LabelUpdate: type: object properties: @@ -11267,7 +11187,9 @@ components: 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" } + example: + color: ffb3b3 + description: this is a description LabelMapping: type: object properties: @@ -11277,22 +11199,22 @@ components: type: object properties: labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' LabelResponse: type: object properties: label: - $ref: "#/components/schemas/Label" + $ref: '#/components/schemas/Label' links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' ASTResponse: description: Contains the AST for the supplied Flux query type: object properties: ast: - $ref: "#/components/schemas/Package" + $ref: '#/components/schemas/Package' WritePrecision: type: string enum: @@ -11310,19 +11232,20 @@ components: description: The name of the organization that owns this Task. type: string status: - $ref: "#/components/schemas/TaskStatusType" + $ref: '#/components/schemas/TaskStatusType' flux: description: The Flux script to run for this task. type: string description: description: An optional description of the task. type: string - required: [flux] + required: + - flux TaskUpdateRequest: type: object properties: status: - $ref: "#/components/schemas/TaskStatusType" + $ref: '#/components/schemas/TaskStatusType' flux: description: The Flux script to run for this task. type: string @@ -11360,29 +11283,29 @@ components: - inactive CheckDiscriminator: oneOf: - - $ref: "#/components/schemas/DeadmanCheck" - - $ref: "#/components/schemas/ThresholdCheck" - - $ref: "#/components/schemas/CustomCheck" + - $ref: '#/components/schemas/DeadmanCheck' + - $ref: '#/components/schemas/ThresholdCheck' + - $ref: '#/components/schemas/CustomCheck' discriminator: propertyName: type mapping: - deadman: "#/components/schemas/DeadmanCheck" - threshold: "#/components/schemas/ThresholdCheck" - custom: "#/components/schemas/CustomCheck" + deadman: ./DeadmanCheck.yml + threshold: ./ThresholdCheck.yml + custom: ./CustomCheck.yml Check: allOf: - - $ref: "#/components/schemas/CheckDiscriminator" + - $ref: '#/components/schemas/CheckDiscriminator' PostCheck: allOf: - - $ref: "#/components/schemas/CheckDiscriminator" + - $ref: '#/components/schemas/CheckDiscriminator' Checks: properties: checks: type: array items: - $ref: "#/components/schemas/Check" + $ref: '#/components/schemas/Check' links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' CheckBase: properties: id: @@ -11393,6 +11316,9 @@ components: orgID: description: The ID of the organization that owns this check. type: string + taskID: + description: The ID of the task associated with this check. + type: string ownerID: description: The ID of creator used to create this check. type: string @@ -11406,14 +11332,14 @@ components: format: date-time readOnly: true query: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' status: - $ref: "#/components/schemas/TaskStatusType" + $ref: '#/components/schemas/TaskStatusType' description: description: An optional description of the check. type: string latestCompleted: - description: Timestamp of latest scheduled, completed run, RFC3339. + description: 'Timestamp of latest scheduled, completed run, RFC3339.' type: string format: date-time readOnly: true @@ -11428,51 +11354,56 @@ components: readOnly: true type: string labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' links: type: object readOnly: true example: - self: "/api/v2/checks/1" - labels: "/api/v2/checks/1/labels" - members: "/api/v2/checks/1/members" - owners: "/api/v2/checks/1/owners" - query: "/api/v2/checks/1/query" + self: /api/v2/checks/1 + labels: /api/v2/checks/1/labels + members: /api/v2/checks/1/members + owners: /api/v2/checks/1/owners + query: /api/v2/checks/1/query properties: self: description: URL for this check - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: description: URL to retrieve labels for this check - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: description: URL to retrieve members for this check - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: description: URL to retrieve owners for this check - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' query: description: URL to retrieve flux script for this check - $ref: "#/components/schemas/Link" - required: [name, orgID, query] + $ref: '#/components/schemas/Link' + required: + - name + - orgID + - query ThresholdCheck: allOf: - - $ref: "#/components/schemas/CheckBase" + - $ref: '#/components/schemas/CheckBase' - type: object - required: [type] + required: + - type properties: type: type: string - enum: [threshold] + enum: + - threshold thresholds: type: array items: - $ref: "#/components/schemas/Threshold" + $ref: '#/components/schemas/Threshold' every: description: Check repetition interval. type: string offset: - description: Duration to delay after the schedule, before executing check. + description: 'Duration to delay after the schedule, before executing check.' type: string tags: description: List of tags to write to each status. @@ -11489,24 +11420,26 @@ components: type: string Threshold: oneOf: - - $ref: "#/components/schemas/GreaterThreshold" - - $ref: "#/components/schemas/LesserThreshold" - - $ref: "#/components/schemas/RangeThreshold" + - $ref: '#/components/schemas/GreaterThreshold' + - $ref: '#/components/schemas/LesserThreshold' + - $ref: '#/components/schemas/RangeThreshold' discriminator: propertyName: type mapping: - greater: "#/components/schemas/GreaterThreshold" - lesser: "#/components/schemas/LesserThreshold" - range: "#/components/schemas/RangeThreshold" + greater: ./GreaterThreshold.yml + lesser: ./LesserThreshold.yml + range: ./RangeThreshold.yml DeadmanCheck: allOf: - - $ref: "#/components/schemas/CheckBase" + - $ref: '#/components/schemas/CheckBase' - type: object - required: [type] + required: + - type properties: type: type: string - enum: [deadman] + enum: + - deadman timeSince: description: String duration before deadman triggers. type: string @@ -11514,15 +11447,15 @@ components: description: String duration for time that a series is considered stale and should not trigger deadman. type: string reportZero: - description: If only zero values reported since time, trigger an alert + description: 'If only zero values reported since time, trigger an alert' type: boolean level: - $ref: "#/components/schemas/CheckStatusLevel" + $ref: '#/components/schemas/CheckStatusLevel' every: description: Check repetition interval. type: string offset: - description: Duration to delay after the schedule, before executing check. + description: 'Duration to delay after the schedule, before executing check.' type: string tags: description: List of tags to write to each status. @@ -11539,53 +11472,66 @@ components: type: string CustomCheck: allOf: - - $ref: "#/components/schemas/CheckBase" + - $ref: '#/components/schemas/CheckBase' - type: object properties: type: type: string - enum: [custom] - required: [type] + enum: + - custom + required: + - type ThresholdBase: properties: level: - $ref: "#/components/schemas/CheckStatusLevel" + $ref: '#/components/schemas/CheckStatusLevel' allValues: - description: If true, only alert if all values meet threshold. + description: 'If true, only alert if all values meet threshold.' type: boolean GreaterThreshold: allOf: - - $ref: "#/components/schemas/ThresholdBase" + - $ref: '#/components/schemas/ThresholdBase' - type: object - required: [type, value] + required: + - type + - value properties: type: type: string - enum: [greater] + enum: + - greater value: type: number format: float LesserThreshold: allOf: - - $ref: "#/components/schemas/ThresholdBase" + - $ref: '#/components/schemas/ThresholdBase' - type: object - required: [type, value] + required: + - type + - value properties: type: type: string - enum: [lesser] + enum: + - lesser value: type: number format: float RangeThreshold: allOf: - - $ref: "#/components/schemas/ThresholdBase" + - $ref: '#/components/schemas/ThresholdBase' - type: object - required: [type, min, max, within] + required: + - type + - min + - max + - within properties: type: type: string - enum: [range] + enum: + - range min: type: number format: float @@ -11597,11 +11543,22 @@ components: CheckStatusLevel: description: The state to record if check matches a criteria. type: string - enum: ["UNKNOWN", "OK", "INFO", "CRIT", "WARN"] + enum: + - UNKNOWN + - OK + - INFO + - CRIT + - WARN RuleStatusLevel: description: The state to record if check matches a criteria. type: string - enum: ["UNKNOWN", "OK", "INFO", "CRIT", "WARN", "ANY"] + enum: + - UNKNOWN + - OK + - INFO + - CRIT + - WARN + - ANY NotificationRuleUpdate: type: object properties: @@ -11616,33 +11573,33 @@ components: - inactive NotificationRuleDiscriminator: oneOf: - - $ref: "#/components/schemas/SlackNotificationRule" - - $ref: "#/components/schemas/SMTPNotificationRule" - - $ref: "#/components/schemas/PagerDutyNotificationRule" - - $ref: "#/components/schemas/HTTPNotificationRule" - - $ref: "#/components/schemas/TelegramNotificationRule" + - $ref: '#/components/schemas/SlackNotificationRule' + - $ref: '#/components/schemas/SMTPNotificationRule' + - $ref: '#/components/schemas/PagerDutyNotificationRule' + - $ref: '#/components/schemas/HTTPNotificationRule' + - $ref: '#/components/schemas/TelegramNotificationRule' discriminator: propertyName: type mapping: - slack: "#/components/schemas/SlackNotificationRule" - smtp: "#/components/schemas/SMTPNotificationRule" - pagerduty: "#/components/schemas/PagerDutyNotificationRule" - http: "#/components/schemas/HTTPNotificationRule" - telegram: "#/components/schemas/TelegramNotificationRule" + slack: ./SlackNotificationRule.yml + smtp: ./SMTPNotificationRule.yml + pagerduty: ./PagerDutyNotificationRule.yml + http: ./HTTPNotificationRule.yml + telegram: ./TelegramNotificationRule.yml NotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleDiscriminator" + - $ref: '#/components/schemas/NotificationRuleDiscriminator' PostNotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleDiscriminator" + - $ref: '#/components/schemas/NotificationRuleDiscriminator' NotificationRules: properties: notificationRules: type: array items: - $ref: "#/components/schemas/NotificationRule" + $ref: '#/components/schemas/NotificationRule' links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' NotificationRuleBase: type: object required: @@ -11655,7 +11612,7 @@ components: - endpointID properties: latestCompleted: - description: Timestamp of latest scheduled, completed run, RFC3339. + description: 'Timestamp of latest scheduled, completed run, RFC3339.' type: string format: date-time readOnly: true @@ -11677,6 +11634,9 @@ components: orgID: description: The ID of the organization that owns this notification rule. type: string + taskID: + description: The ID of the task associated with this notification rule. + type: string ownerID: description: The ID of creator used to create this notification rule. type: string @@ -11690,7 +11650,7 @@ components: format: date-time readOnly: true status: - $ref: "#/components/schemas/TaskStatusType" + $ref: '#/components/schemas/TaskStatusType' name: description: Human-readable name describing the notification rule. type: string @@ -11700,21 +11660,21 @@ components: description: The notification repetition interval. type: string offset: - description: Duration to delay after the schedule, before executing check. + description: 'Duration to delay after the schedule, before executing check.' type: string runbookLink: type: string limitEvery: - description: Don't notify me more than times every seconds. If set, limit cannot be empty. + description: 'Don''t notify me more than times every seconds. If set, limit cannot be empty.' type: integer limit: - description: Don't notify me more than times every seconds. If set, limitEvery cannot be empty. + description: 'Don''t notify me more than times every seconds. If set, limitEvery cannot be empty.' type: integer tagRules: description: List of tag rules the notification rule attempts to match. type: array items: - $ref: "#/components/schemas/TagRule" + $ref: '#/components/schemas/TagRule' description: description: An optional description of the notification rule. type: string @@ -11723,34 +11683,34 @@ components: type: array minItems: 1 items: - $ref: "#/components/schemas/StatusRule" + $ref: '#/components/schemas/StatusRule' labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' links: type: object readOnly: true example: - self: "/api/v2/notificationRules/1" - labels: "/api/v2/notificationRules/1/labels" - members: "/api/v2/notificationRules/1/members" - owners: "/api/v2/notificationRules/1/owners" - query: "/api/v2/notificationRules/1/query" + self: /api/v2/notificationRules/1 + labels: /api/v2/notificationRules/1/labels + members: /api/v2/notificationRules/1/members + owners: /api/v2/notificationRules/1/owners + query: /api/v2/notificationRules/1/query properties: self: description: URL for this endpoint. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: description: URL to retrieve labels for this notification rule. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: description: URL to retrieve members for this notification rule. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: description: URL to retrieve owners for this notification rule. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' query: description: URL to retrieve flux script for this notification rule. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' TagRule: type: object properties: @@ -11760,57 +11720,70 @@ components: type: string operator: type: string - enum: ["equal", "notequal", "equalregex", "notequalregex"] + enum: + - equal + - notequal + - equalregex + - notequalregex StatusRule: type: object properties: currentLevel: - $ref: "#/components/schemas/RuleStatusLevel" + $ref: '#/components/schemas/RuleStatusLevel' previousLevel: - $ref: "#/components/schemas/RuleStatusLevel" + $ref: '#/components/schemas/RuleStatusLevel' count: type: integer period: type: string HTTPNotificationRuleBase: type: object - required: [type] + required: + - type properties: type: type: string - enum: [http] + enum: + - http url: type: string HTTPNotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleBase" - - $ref: "#/components/schemas/HTTPNotificationRuleBase" + - $ref: '#/components/schemas/NotificationRuleBase' + - $ref: '#/components/schemas/HTTPNotificationRuleBase' SlackNotificationRuleBase: type: object - required: [type, messageTemplate] + required: + - type + - messageTemplate properties: type: type: string - enum: [slack] + enum: + - slack channel: type: string messageTemplate: type: string SlackNotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleBase" - - $ref: "#/components/schemas/SlackNotificationRuleBase" + - $ref: '#/components/schemas/NotificationRuleBase' + - $ref: '#/components/schemas/SlackNotificationRuleBase' SMTPNotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleBase" - - $ref: "#/components/schemas/SMTPNotificationRuleBase" + - $ref: '#/components/schemas/NotificationRuleBase' + - $ref: '#/components/schemas/SMTPNotificationRuleBase' SMTPNotificationRuleBase: type: object - required: [type, subjectTemplate, to] + required: + - type + - subjectTemplate + - to properties: type: type: string - enum: [smtp] + enum: + - smtp subjectTemplate: type: string bodyTemplate: @@ -11819,34 +11792,41 @@ components: type: string PagerDutyNotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleBase" - - $ref: "#/components/schemas/PagerDutyNotificationRuleBase" + - $ref: '#/components/schemas/NotificationRuleBase' + - $ref: '#/components/schemas/PagerDutyNotificationRuleBase' PagerDutyNotificationRuleBase: type: object - required: [type, messageTemplate] + required: + - type + - messageTemplate properties: type: type: string - enum: [pagerduty] + enum: + - pagerduty messageTemplate: type: string TelegramNotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleBase" - - $ref: "#/components/schemas/TelegramNotificationRuleBase" + - $ref: '#/components/schemas/NotificationRuleBase' + - $ref: '#/components/schemas/TelegramNotificationRuleBase' TelegramNotificationRuleBase: type: object - required: [type, messageTemplate, channel] + required: + - type + - messageTemplate + - channel properties: type: description: The discriminator between other types of notification rules is "telegram". type: string - enum: [telegram] + enum: + - telegram 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" . + description: 'Parse mode of the message text per https://core.telegram.org/bots/api#formatting-options . Defaults to "MarkdownV2" .' type: string enum: - MarkdownV2 @@ -11857,7 +11837,6 @@ components: type: boolean NotificationEndpointUpdate: type: object - properties: name: type: string @@ -11870,34 +11849,36 @@ components: - inactive NotificationEndpointDiscrimator: oneOf: - - $ref: "#/components/schemas/SlackNotificationEndpoint" - - $ref: "#/components/schemas/PagerDutyNotificationEndpoint" - - $ref: "#/components/schemas/HTTPNotificationEndpoint" - - $ref: "#/components/schemas/TelegramNotificationEndpoint" + - $ref: '#/components/schemas/SlackNotificationEndpoint' + - $ref: '#/components/schemas/PagerDutyNotificationEndpoint' + - $ref: '#/components/schemas/HTTPNotificationEndpoint' + - $ref: '#/components/schemas/TelegramNotificationEndpoint' discriminator: propertyName: type mapping: - slack: "#/components/schemas/SlackNotificationEndpoint" - pagerduty: "#/components/schemas/PagerDutyNotificationEndpoint" - http: "#/components/schemas/HTTPNotificationEndpoint" - telegram: "#/components/schemas/TelegramNotificationEndpoint" + slack: ./SlackNotificationEndpoint.yml + pagerduty: ./PagerDutyNotificationEndpoint.yml + http: ./HTTPNotificationEndpoint.yml + telegram: ./TelegramNotificationEndpoint.yml NotificationEndpoint: allOf: - - $ref: "#/components/schemas/NotificationEndpointDiscrimator" + - $ref: '#/components/schemas/NotificationEndpointDiscrimator' PostNotificationEndpoint: allOf: - - $ref: "#/components/schemas/NotificationEndpointDiscrimator" + - $ref: '#/components/schemas/NotificationEndpointDiscrimator' NotificationEndpoints: properties: notificationEndpoints: type: array items: - $ref: "#/components/schemas/NotificationEndpoint" + $ref: '#/components/schemas/NotificationEndpoint' links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' NotificationEndpointBase: type: object - required: [type, name] + required: + - type + - name properties: id: type: string @@ -11922,36 +11903,38 @@ components: description: The status of the endpoint. default: active type: string - enum: ["active", "inactive"] + enum: + - active + - inactive labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' links: type: object readOnly: true example: - self: "/api/v2/notificationEndpoints/1" - labels: "/api/v2/notificationEndpoints/1/labels" - members: "/api/v2/notificationEndpoints/1/members" - owners: "/api/v2/notificationEndpoints/1/owners" + self: /api/v2/notificationEndpoints/1 + labels: /api/v2/notificationEndpoints/1/labels + members: /api/v2/notificationEndpoints/1/members + owners: /api/v2/notificationEndpoints/1/owners properties: self: description: URL for this endpoint. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: description: URL to retrieve labels for this endpoint. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: description: URL to retrieve members for this endpoint. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: description: URL to retrieve owners for this endpoint. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' type: - $ref: "#/components/schemas/NotificationEndpointType" + $ref: '#/components/schemas/NotificationEndpointType' SlackNotificationEndpoint: type: object allOf: - - $ref: "#/components/schemas/NotificationEndpointBase" + - $ref: '#/components/schemas/NotificationEndpointBase' - type: object properties: url: @@ -11963,9 +11946,10 @@ components: PagerDutyNotificationEndpoint: type: object allOf: - - $ref: "#/components/schemas/NotificationEndpointBase" + - $ref: '#/components/schemas/NotificationEndpointBase' - type: object - required: [routingKey] + required: + - routingKey properties: clientURL: type: string @@ -11974,9 +11958,12 @@ components: HTTPNotificationEndpoint: type: object allOf: - - $ref: "#/components/schemas/NotificationEndpointBase" + - $ref: '#/components/schemas/NotificationEndpointBase' - type: object - required: [url, authMethod, method] + required: + - url + - authMethod + - method properties: url: type: string @@ -11988,10 +11975,16 @@ components: type: string method: type: string - enum: ["POST", "GET", "PUT"] + enum: + - POST + - GET + - PUT authMethod: type: string - enum: ["none", "basic", "bearer"] + enum: + - none + - basic + - bearer contentTemplate: type: string headers: @@ -12002,19 +11995,25 @@ components: TelegramNotificationEndpoint: type: object allOf: - - $ref: "#/components/schemas/NotificationEndpointBase" + - $ref: '#/components/schemas/NotificationEndpointBase' - type: object - required: [token, channel] + required: + - token + - channel properties: token: - description: Specifies the Telegram bot token. See https://core.telegram.org/bots#creating-a-new-bot . + description: 'Specifies the Telegram bot token. See https://core.telegram.org/bots#creating-a-new-bot .' type: string channel: - description: ID of the telegram channel, a chat_id in https://core.telegram.org/bots/api#sendmessage . + description: 'ID of the telegram channel, a chat_id in https://core.telegram.org/bots/api#sendmessage .' type: string NotificationEndpointType: type: string - enum: ["slack", "pagerduty", "http", "telegram"] + enum: + - slack + - pagerduty + - http + - telegram DBRP: type: object properties: @@ -12041,24 +12040,24 @@ components: type: boolean description: Specify if this mapping represents the default retention policy for the database specificed. links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' oneOf: - required: - - orgID - - bucketID - - database - - retention_policy + - orgID + - bucketID + - database + - retention_policy - required: - - org - - bucketID - - database - - retention_policy + - org + - bucketID + - database + - retention_policy DBRPs: properties: content: type: array items: - $ref: "#/components/schemas/DBRP" + $ref: '#/components/schemas/DBRP' DBRPUpdate: properties: database: @@ -12070,7 +12069,354 @@ components: default: type: boolean links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' + Resource: + type: object + required: + - type + properties: + type: + type: string + enum: + - authorizations + - buckets + - dashboards + - orgs + - sources + - tasks + - telegrafs + - users + - variables + - scrapers + - secrets + - labels + - views + - documents + - notificationRules + - notificationEndpoints + - checks + - dbrp + - flows + - annotations + id: + type: string + nullable: true + description: If ID is set that is a permission for a specific resource. if it is not set it is a permission for all resources of that resource type. + name: + type: string + nullable: true + description: Optional name of the resource if the resource has a name field. + orgID: + type: string + nullable: true + description: If orgID is set that is a permission for all resources owned my that org. if it is not set it is a permission for all resources of that resource type. + org: + type: string + nullable: true + description: Optional name of the organization of the organization with orgID. + Permission: + required: + - action + - resource + properties: + action: + type: string + enum: + - read + - write + resource: + $ref: '#/components/schemas/Resource' + Authorization: + required: + - orgID + - permissions + allOf: + - $ref: '#/components/schemas/AuthorizationUpdateRequest' + - type: object + properties: + createdAt: + type: string + format: date-time + readOnly: true + updatedAt: + type: string + format: date-time + readOnly: true + orgID: + type: string + description: ID of org that authorization is scoped to. + permissions: + type: array + minItems: 1 + description: List of permissions for an auth. An auth must have at least one Permission. + items: + $ref: '#/components/schemas/Permission' + id: + readOnly: true + type: string + token: + readOnly: true + type: string + description: Passed via the Authorization Header and Token Authentication type. + userID: + readOnly: true + type: string + description: ID of user that created and owns the token. + user: + readOnly: true + type: string + description: Name of user that created and owns the token. + org: + readOnly: true + type: string + description: Name of the org token is scoped to. + links: + type: object + readOnly: true + example: + self: /api/v2/authorizations/1 + user: /api/v2/users/12 + properties: + self: + readOnly: true + $ref: '#/components/schemas/Link' + user: + readOnly: true + $ref: '#/components/schemas/Link' + Authorizations: + type: object + properties: + links: + readOnly: true + $ref: '#/components/schemas/Links' + authorizations: + type: array + items: + $ref: '#/components/schemas/Authorization' + User: + properties: + id: + readOnly: true + type: string + oauthID: + type: string + name: + type: string + status: + description: If inactive the user is inactive. + default: active + type: string + enum: + - active + - inactive + role: + type: string + enum: + - owner + - member + org_id: + type: string + required: + - name + Users: + type: object + properties: + links: + type: object + properties: + self: + type: string + format: uri + users: + type: array + items: + $ref: '#/components/schemas/UserResponse' + OnboardingRequest: + type: object + properties: + username: + type: string + password: + type: string + org: + type: string + bucket: + type: string + retentionPeriodHrs: + type: integer + deprecated: true + retentionPeriodSeconds: + type: integer + limit: + $ref: '#/components/schemas/Limit' + required: + - username + - org + - bucket + OnboardingResponse: + type: object + properties: + user: + $ref: '#/components/schemas/UserResponse' + org: + $ref: '#/components/schemas/Organization' + bucket: + $ref: '#/components/schemas/Bucket' + auth: + $ref: '#/components/schemas/Authorization' + Limit: + type: object + description: These are org limits similar to those configured in/by quartz. + properties: + orgID: + type: string + rate: + type: object + properties: + readKBs: + type: integer + description: Query limit in kb/sec. 0 is unlimited. + concurrentReadRequests: + type: integer + description: Allowed concurrent queries. 0 is unlimited. + writeKBs: + type: integer + description: Write limit in kb/sec. 0 is unlimited. + concurrentWriteRequests: + type: integer + description: Allowed concurrent writes. 0 is unlimited. + cardinality: + type: integer + description: Allowed organization total cardinality. 0 is unlimited. + bucket: + type: object + properties: + maxBuckets: + type: integer + maxRetentionDuration: + type: integer + description: Max bucket retention duration in nanoseconds. 0 is unlimited. + task: + type: object + properties: + maxTasks: + type: integer + dashboard: + type: object + properties: + maxDashboards: + type: integer + check: + type: object + properties: + maxChecks: + type: integer + notificationRule: + type: object + properties: + maxNotifications: + type: integer + blockedNotificationRules: + type: string + description: comma separated list of notification rules + example: 'http,pagerduty' + notificationEndpoint: + type: object + properties: + blockedNotificationEndpoints: + type: string + description: comma separated list of notification endpoints + example: 'http,pagerduty' + features: + type: object + properties: + allowDelete: + type: boolean + description: allow delete predicate endpoint + Variable: + type: object + required: + - name + - orgID + - arguments + properties: + links: + type: object + readOnly: true + properties: + self: + type: string + format: uri + org: + type: string + format: uri + labels: + type: string + format: uri + id: + readOnly: true + type: string + orgID: + type: string + name: + type: string + description: + type: string + selected: + type: array + items: + type: string + sort_order: + type: integer + labels: + $ref: '#/components/schemas/Labels' + arguments: + $ref: '#/components/schemas/VariableProperties' + createdAt: + type: string + format: date-time + updatedAt: + type: string + format: date-time + Variables: + type: object + example: + variables: + - id: '1221432' + name: ':ok:' + selected: + - hello + arguments: + type: constant + values: + - howdy + - hello + - hi + - yo + - oy + - id: '1221432' + name: ':ok:' + selected: + - c + arguments: + type: map + values: + a: fdjaklfdjkldsfjlkjdsa + b: dfaksjfkljekfajekdljfas + c: fdjksajfdkfeawfeea + - id: '1221432' + name: ':ok:' + selected: + - host + arguments: + type: query + query: 'from(bucket: "foo") |> showMeasurements()' + language: flux + properties: + variables: + type: array + items: + $ref: '#/components/schemas/Variable' securitySchemes: BasicAuth: type: http diff --git a/api-docs/cloud/swaggerV1Compat.yml b/api-docs/cloud/swaggerV1Compat.yml index 9721e6493..d0ab5fd9d 100644 --- a/api-docs/cloud/swaggerV1Compat.yml +++ b/api-docs/cloud/swaggerV1Compat.yml @@ -1,3 +1,4 @@ +# this is a manually maintained file for these old routes until oats#15 is resolved openapi: "3.0.0" info: title: Influx API Service (V1 compatible endpoints) @@ -118,7 +119,7 @@ paths: name: Accept schema: type: string - description: Specifies how query results should be encoded in the response. + description: Specifies how query results should be encoded in the response. **Note:** With `application/csv`, query results include epoch timestamps instead of RFC3339 timestamps. default: application/json enum: - application/json @@ -253,7 +254,6 @@ components: test_measurement,,1603740794286107366,1,tag_value test_measurement,,1603740870053205649,2,tag_value test_measurement,,1603741221085428881,3,tag_value - Error: properties: code: diff --git a/api-docs/getswagger.sh b/api-docs/getswagger.sh new file mode 100644 index 000000000..85b6a9e46 --- /dev/null +++ b/api-docs/getswagger.sh @@ -0,0 +1,55 @@ +#!/bin/bash -e + +# This script provides a simple way grab the latest fully resolved swagger files +# from the influxdata/openapi repo. +# +# Specify a context to retrieve (cloud, oss, v1compat, all). +# Optionally specify an OSS version to write the updated swagger to. +# The default version is the latest OSS version directory in the api-docs directory +# +# Syntax: +# sh ./getswagger.sh +# +# Examples: +# sh ./getswagger.sh cloud +# sh .getswagger.sh oss v2.0 + +versionDirs=($(ls -d */)) +latestOSS=${versionDirs[${#versionDirs[@]}-1]} + +context=$1 +version=${2-${latestOSS%/}} + +function updateCloud { + echo "Updating Cloud swagger..." + curl https://raw.githubusercontent.com/influxdata/openapi/master/contracts/cloud.yml -s -o cloud/swagger.yml +} + +function updateOSS { + echo "Updating OSS ${version} swagger..." + curl https://raw.githubusercontent.com/influxdata/openapi/master/contracts/oss.yml -s -o ${version}/swagger.yml +} + +function updateV1Compat { + echo "Updating Cloud and ${version} v1 compatibilty swagger..." + curl https://raw.githubusercontent.com/influxdata/openapi/master/contracts/swaggerV1Compat.yml -s -o cloud/swaggerV1Compat.yml + cp cloud/swaggerV1Compat.yml ${version}/swaggerV1Compat.yml +} + +if [ "$context" = "cloud" ]; +then + updateCloud +elif [ "$context" = "oss" ]; +then + updateOSS +elif [ "$context" = "v1compat" ]; +then + updateV1Compat +elif [ "$context" = "all" ]; +then + updateCloud + updateOSS + updateV1Compat +else + echo "Provide a context (cloud, oss, v1compat, all)" +fi diff --git a/api-docs/v2.0/swagger.yml b/api-docs/v2.0/swagger.yml index 0a33aa0ce..9c1e3c2a0 100644 --- a/api-docs/v2.0/swagger.yml +++ b/api-docs/v2.0/swagger.yml @@ -1,7 +1,7 @@ -openapi: "3.0.0" +openapi: 3.0.0 info: - title: Influx API Service - version: 0.1.0 + title: Influx OSS API Service + version: 2.0.0 servers: - url: /api/v2 paths: @@ -12,142 +12,69 @@ paths: security: - BasicAuth: [] parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' responses: - "204": + '204': description: Successfully authenticated - "401": + '401': description: Unauthorized access content: application/json: schema: - $ref: "#/components/schemas/Error" - "403": + $ref: '#/components/schemas/Error' + '403': description: user account is disabled content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unsuccessful authentication content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /signout: post: operationId: PostSignout summary: Expire the current session parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' responses: - "204": + '204': description: Session successfully expired - "401": + '401': description: Unauthorized access content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unsuccessful session expiry content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /: get: operationId: GetRoutes summary: Map of all top level routes available parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' responses: default: description: All routes content: application/json: schema: - $ref: "#/components/schemas/Routes" - /setup: - get: - operationId: GetSetup - tags: - - Setup - summary: Check if database has default user, org, bucket - description: Returns `true` if no default user, organization, or bucket has been created. - parameters: - - $ref: "#/components/parameters/TraceSpan" - responses: - "200": - description: allowed true or false - content: - application/json: - schema: - $ref: "#/components/schemas/IsOnboarding" - post: - operationId: PostSetup - tags: - - Setup - summary: Set up initial user, org and bucket - description: Post an onboarding request to set up initial user, org and bucket. - parameters: - - $ref: "#/components/parameters/TraceSpan" - requestBody: - description: Source to create - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/OnboardingRequest" - responses: - "201": - description: Created default user, bucket, org - content: - application/json: - schema: - $ref: "#/components/schemas/OnboardingResponse" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - /setup/user: - post: - operationId: PostSetupUser - tags: - - Setup - summary: Set up a new user, org and bucket - description: Post an onboarding request to set up a new user, org and bucket. - parameters: - - $ref: "#/components/parameters/TraceSpan" - requestBody: - description: Source to create - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/OnboardingRequest" - responses: - "201": - description: Created default user, bucket, org - content: - application/json: - schema: - $ref: "#/components/schemas/OnboardingResponse" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Routes' /documents/templates: get: operationId: GetDocumentsTemplates tags: - Templates parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: org description: Specifies the name of the organization of the template. @@ -159,52 +86,52 @@ paths: schema: type: string responses: - "200": + '200': description: A list of template documents content: application/json: schema: - $ref: "#/components/schemas/Documents" + $ref: '#/components/schemas/Documents' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDocumentsTemplates tags: - Templates summary: Create a template parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Template that will be created required: true content: application/json: schema: - $ref: "#/components/schemas/DocumentCreate" + $ref: '#/components/schemas/DocumentCreate' responses: - "201": + '201': description: Template created content: application/json: schema: - $ref: "#/components/schemas/Document" + $ref: '#/components/schemas/Document' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/documents/templates/{templateID}": + $ref: '#/components/schemas/Error' + '/documents/templates/{templateID}': get: operationId: GetDocumentsTemplatesID tags: - Templates parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: templateID schema: @@ -212,24 +139,24 @@ paths: required: true description: The template ID. responses: - "200": + '200': description: The template requested content: application/json: schema: - $ref: "#/components/schemas/Document" + $ref: '#/components/schemas/Document' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' put: operationId: PutDocumentsTemplatesID tags: - Templates parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: templateID schema: @@ -242,27 +169,27 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/DocumentUpdate" + $ref: '#/components/schemas/DocumentUpdate' responses: - "200": + '200': description: The newly updated template content: application/json: schema: - $ref: "#/components/schemas/Document" + $ref: '#/components/schemas/Document' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteDocumentsTemplatesID tags: - Templates summary: Delete a template parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: templateID schema: @@ -270,22 +197,22 @@ paths: required: true description: The template ID. responses: - "204": + '204': description: Delete has been accepted default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/documents/templates/{templateID}/labels": + $ref: '#/components/schemas/Error' + '/documents/templates/{templateID}/labels': get: operationId: GetDocumentsTemplatesIDLabels tags: - Templates summary: List all labels for a template parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: templateID schema: @@ -293,25 +220,25 @@ paths: required: true description: The template ID. responses: - "200": + '200': description: A list of all labels for a template content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDocumentsTemplatesIDLabels tags: - Templates summary: Add a label to a template parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: templateID schema: @@ -324,28 +251,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The label added to the template content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/documents/templates/{templateID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/documents/templates/{templateID}/labels/{labelID}': delete: operationId: DeleteDocumentsTemplatesIDLabelsID tags: - Templates summary: Delete a label from a template parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: templateID schema: @@ -359,20 +286,20 @@ paths: required: true description: The label ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Template not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /dbrps: get: operationId: GetDBRPs @@ -380,7 +307,7 @@ paths: - DBRPs summary: List all database retention policy mappings parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: orgID required: true @@ -413,65 +340,65 @@ paths: schema: type: string responses: - "200": + '200': description: A list of all database retention policy mappings content: application/json: schema: - $ref: "#/components/schemas/DBRPs" - "400": + $ref: '#/components/schemas/DBRPs' + '400': description: if any of the parameter passed is invalid content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDBRP tags: - DBRPs summary: Add a database retention policy mapping parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: The database retention policy mapping to add required: true content: application/json: schema: - $ref: "#/components/schemas/DBRP" + $ref: '#/components/schemas/DBRP' responses: - "201": + '201': description: Database retention policy mapping created content: application/json: schema: - $ref: "#/components/schemas/DBRP" - "400": + $ref: '#/components/schemas/DBRP' + '400': description: if any of the IDs in the mapping is invalid content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dbrps/{dbrpID}": + $ref: '#/components/schemas/Error' + '/dbrps/{dbrpID}': get: operationId: GetDBRPsID tags: - DBRPs summary: Retrieve a database retention policy mapping parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: orgID required: true @@ -485,24 +412,24 @@ paths: required: true description: The database retention policy mapping ID responses: - "200": + '200': description: The database retention policy requested content: application/json: schema: - $ref: "#/components/schemas/DBRP" - "400": + $ref: '#/components/schemas/DBRP' + '400': description: if any of the IDs passed is invalid content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchDBRPID tags: @@ -514,9 +441,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/DBRPUpdate" + $ref: '#/components/schemas/DBRPUpdate' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: orgID required: true @@ -530,37 +457,37 @@ paths: required: true description: The database retention policy mapping. responses: - "200": + '200': description: An updated mapping content: application/json: schema: - $ref: "#/components/schemas/DBRP" - "404": - description: The mapping was not found - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - "400": + $ref: '#/components/schemas/DBRP' + '400': description: if any of the IDs passed is invalid content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' + '404': + description: The mapping was not found + content: + application/json: + schema: + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteDBRPID tags: - DBRPs summary: Delete a database retention policy parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: orgID required: true @@ -574,103 +501,103 @@ paths: required: true description: The database retention policy mapping responses: - "204": + '204': description: Delete has been accepted - "400": + '400': description: if any of the IDs passed is invalid content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /telegraf/plugins: get: operationId: GetTelegrafPlugins parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: type description: The type of plugin desired. schema: type: string responses: - "200": + '200': description: A list of Telegraf plugins. content: application/json: schema: - $ref: "#/components/schemas/TelegrafPlugins" + $ref: '#/components/schemas/TelegrafPlugins' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /telegrafs: get: operationId: GetTelegrafs tags: - Telegrafs parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: orgID description: The organization ID the Telegraf config belongs to. schema: type: string responses: - "200": + '200': description: A list of Telegraf configs content: application/json: schema: - $ref: "#/components/schemas/Telegrafs" + $ref: '#/components/schemas/Telegrafs' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTelegrafs tags: - Telegrafs summary: Create a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Telegraf config to create required: true content: application/json: schema: - $ref: "#/components/schemas/TelegrafRequest" + $ref: '#/components/schemas/TelegrafRequest' responses: - "201": + '201': description: Telegraf config created content: application/json: schema: - $ref: "#/components/schemas/Telegraf" + $ref: '#/components/schemas/Telegraf' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}': get: operationId: GetTelegrafsID tags: - Telegrafs summary: Retrieve a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -688,18 +615,22 @@ paths: - application/json - application/octet-stream responses: - "200": + '200': description: Telegraf config details content: application/toml: - example: "[agent]\ninterval = \"10s\"" + example: |- + [agent] + interval = "10s" schema: type: string application/json: schema: - $ref: "#/components/schemas/Telegraf" + $ref: '#/components/schemas/Telegraf' application/octet-stream: - example: "[agent]\ninterval = \"10s\"" + example: |- + [agent] + interval = "10s" schema: type: string default: @@ -707,14 +638,14 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' put: operationId: PutTelegrafsID tags: - Telegrafs summary: Update a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -727,27 +658,27 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/TelegrafRequest" + $ref: '#/components/schemas/TelegrafRequest' responses: - "200": + '200': description: An updated Telegraf config content: application/json: schema: - $ref: "#/components/schemas/Telegraf" + $ref: '#/components/schemas/Telegraf' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteTelegrafsID tags: - Telegrafs summary: Delete a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -755,22 +686,22 @@ paths: required: true description: The Telegraf config ID. responses: - "204": + '204': description: Delete has been accepted default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}/labels": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}/labels': get: operationId: GetTelegrafsIDLabels tags: - Telegrafs summary: List all labels for a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -778,25 +709,25 @@ paths: required: true description: The Telegraf config ID. responses: - "200": + '200': description: A list of all labels for a Telegraf config content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTelegrafsIDLabels tags: - Telegrafs summary: Add a label to a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -809,28 +740,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The label added to the Telegraf config content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}/labels/{labelID}': delete: operationId: DeleteTelegrafsIDLabelsID tags: - Telegrafs summary: Delete a label from a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -844,21 +775,21 @@ paths: required: true description: The label ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Telegraf config not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}/members": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}/members': get: operationId: GetTelegrafsIDMembers tags: @@ -866,7 +797,7 @@ paths: - Telegrafs summary: List all users with member privileges for a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -874,18 +805,18 @@ paths: required: true description: The Telegraf config ID. responses: - "200": + '200': description: A list of Telegraf config members content: application/json: schema: - $ref: "#/components/schemas/ResourceMembers" + $ref: '#/components/schemas/ResourceMembers' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTelegrafsIDMembers tags: @@ -893,7 +824,7 @@ paths: - Telegrafs summary: Add a member to a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -906,21 +837,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Member added to Telegraf config content: application/json: schema: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}/members/{userID}": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}/members/{userID}': delete: operationId: DeleteTelegrafsIDMembersID tags: @@ -928,7 +859,7 @@ paths: - Telegrafs summary: Remove a member from a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -942,15 +873,15 @@ paths: required: true description: The Telegraf config ID. responses: - "204": + '204': description: Member removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}/owners": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}/owners': get: operationId: GetTelegrafsIDOwners tags: @@ -958,7 +889,7 @@ paths: - Telegrafs summary: List all owners of a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -966,18 +897,18 @@ paths: required: true description: The Telegraf config ID. responses: - "200": + '200': description: A list of Telegraf config owners content: application/json: schema: - $ref: "#/components/schemas/ResourceOwners" + $ref: '#/components/schemas/ResourceOwners' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTelegrafsIDOwners tags: @@ -985,7 +916,7 @@ paths: - Telegrafs summary: Add an owner to a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: telegrafID schema: @@ -998,21 +929,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Telegraf config owner added content: application/json: schema: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/telegrafs/{telegrafID}/owners/{userID}": + $ref: '#/components/schemas/Error' + '/telegrafs/{telegrafID}/owners/{userID}': delete: operationId: DeleteTelegrafsIDOwnersID tags: @@ -1020,7 +951,7 @@ paths: - Telegrafs summary: Remove an owner from a Telegraf config parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -1034,14 +965,14 @@ paths: required: true description: The Telegraf config ID. responses: - "204": + '204': description: Owner removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /scrapers: get: operationId: GetScrapers @@ -1049,7 +980,7 @@ paths: - ScraperTargets summary: Get all scraper targets parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: name description: Specifies the name of the scraper target. @@ -1057,7 +988,7 @@ paths: type: string - in: query name: id - description: List of scraper target IDs to return. If both `id` and `owner` are specified, only `id` is used. + description: 'List of scraper target IDs to return. If both `id` and `owner` are specified, only `id` is used.' schema: type: array items: @@ -1073,47 +1004,47 @@ paths: schema: type: string responses: - "200": + '200': description: All scraper targets content: application/json: schema: - $ref: "#/components/schemas/ScraperTargetResponses" + $ref: '#/components/schemas/ScraperTargetResponses' post: operationId: PostScrapers summary: Create a scraper target tags: - ScraperTargets parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Scraper target to create required: true content: application/json: schema: - $ref: "#/components/schemas/ScraperTargetRequest" + $ref: '#/components/schemas/ScraperTargetRequest' responses: - "201": + '201': description: Scraper target created content: application/json: schema: - $ref: "#/components/schemas/ScraperTargetResponse" + $ref: '#/components/schemas/ScraperTargetResponse' default: description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}': get: operationId: GetScrapersID tags: - ScraperTargets summary: Get a scraper target by ID parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID required: true @@ -1121,25 +1052,25 @@ paths: type: string description: The scraper target ID. responses: - "200": + '200': description: Scraper target updated content: application/json: schema: - $ref: "#/components/schemas/ScraperTargetResponse" + $ref: '#/components/schemas/ScraperTargetResponse' default: description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteScrapersID tags: - ScraperTargets summary: Delete a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID required: true @@ -1147,21 +1078,21 @@ paths: type: string description: The scraper target ID. responses: - "204": + '204': description: Scraper target deleted default: description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchScrapersID summary: Update a scraper target tags: - ScraperTargets parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID required: true @@ -1174,28 +1105,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/ScraperTargetRequest" + $ref: '#/components/schemas/ScraperTargetRequest' responses: - "200": + '200': description: Scraper target updated content: application/json: schema: - $ref: "#/components/schemas/ScraperTargetResponse" + $ref: '#/components/schemas/ScraperTargetResponse' default: description: Internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}/labels": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}/labels': get: operationId: GetScrapersIDLabels tags: - ScraperTargets summary: List all labels for a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1203,25 +1134,25 @@ paths: required: true description: The scraper target ID. responses: - "200": + '200': description: A list of all labels for a scraper target content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostScrapersIDLabels tags: - ScraperTargets summary: Add a label to a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1234,28 +1165,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The newly added label content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}/labels/{labelID}': delete: operationId: DeleteScrapersIDLabelsID tags: - ScraperTargets summary: Delete a label from a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1269,21 +1200,21 @@ paths: required: true description: The label ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Scraper target not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}/members": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}/members': get: operationId: GetScrapersIDMembers tags: @@ -1291,7 +1222,7 @@ paths: - ScraperTargets summary: List all users with member privileges for a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1299,18 +1230,18 @@ paths: required: true description: The scraper target ID. responses: - "200": + '200': description: A list of scraper target members content: application/json: schema: - $ref: "#/components/schemas/ResourceMembers" + $ref: '#/components/schemas/ResourceMembers' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostScrapersIDMembers tags: @@ -1318,7 +1249,7 @@ paths: - ScraperTargets summary: Add a member to a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1331,21 +1262,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Member added to scraper targets content: application/json: schema: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}/members/{userID}": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}/members/{userID}': delete: operationId: DeleteScrapersIDMembersID tags: @@ -1353,7 +1284,7 @@ paths: - ScraperTargets summary: Remove a member from a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -1367,15 +1298,15 @@ paths: required: true description: The scraper target ID. responses: - "204": + '204': description: Member removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}/owners": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}/owners': get: operationId: GetScrapersIDOwners tags: @@ -1383,7 +1314,7 @@ paths: - ScraperTargets summary: List all owners of a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1391,18 +1322,18 @@ paths: required: true description: The scraper target ID. responses: - "200": + '200': description: A list of scraper target owners content: application/json: schema: - $ref: "#/components/schemas/ResourceOwners" + $ref: '#/components/schemas/ResourceOwners' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostScrapersIDOwners tags: @@ -1410,7 +1341,7 @@ paths: - ScraperTargets summary: Add an owner to a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: scraperTargetID schema: @@ -1423,21 +1354,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Scraper target owner added content: application/json: schema: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/scrapers/{scraperTargetID}/owners/{userID}": + $ref: '#/components/schemas/Error' + '/scrapers/{scraperTargetID}/owners/{userID}': delete: operationId: DeleteScrapersIDOwnersID tags: @@ -1445,7 +1376,7 @@ paths: - ScraperTargets summary: Remove an owner from a scraper target parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -1459,207 +1390,22 @@ paths: required: true description: The scraper target ID. responses: - "204": + '204': description: Owner removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /variables: - get: - operationId: GetVariables - tags: - - Variables - summary: Get all variables - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: query - name: org - description: The organization name. - schema: - type: string - - in: query - name: orgID - description: The organization ID. - schema: - type: string - responses: - "200": - description: All variables for an organization - content: - application/json: - schema: - $ref: "#/components/schemas/Variables" - "400": - description: Invalid request - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - default: - description: Internal server error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - post: - operationId: PostVariables - summary: Create a variable - tags: - - Variables - parameters: - - $ref: "#/components/parameters/TraceSpan" - requestBody: - description: Variable to create - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - responses: - "201": - description: Variable created - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - default: - description: Internal server error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - "/variables/{variableID}": - get: - operationId: GetVariablesID - tags: - - Variables - summary: Get a variable - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: variableID - required: true - schema: - type: string - description: The variable ID. - responses: - "200": - description: Variable found - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - "404": - description: Variable not found - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - default: - description: Internal server error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - delete: - operationId: DeleteVariablesID - tags: - - Variables - summary: Delete a variable - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: variableID - required: true - schema: - type: string - description: The variable ID. - responses: - "204": - description: Variable deleted - default: - description: Internal server error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - patch: - operationId: PatchVariablesID - summary: Update a variable - tags: - - Variables - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: variableID - required: true - schema: - type: string - description: The variable ID. - requestBody: - description: Variable update to apply - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - responses: - "200": - description: Variable updated - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - default: - description: Internal server error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - put: - operationId: PutVariablesID - summary: Replace a variable - tags: - - Variables - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: variableID - required: true - schema: - type: string - description: The variable ID. - requestBody: - description: Variable to replace - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - responses: - "200": - description: Variable updated - content: - application/json: - schema: - $ref: "#/components/schemas/Variable" - default: - description: Internal server error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - "/variables/{variableID}/labels": + $ref: '#/components/schemas/Error' + '/variables/{variableID}/labels': get: operationId: GetVariablesIDLabels tags: - Variables summary: List all labels for a variable parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: variableID schema: @@ -1667,25 +1413,25 @@ paths: required: true description: The variable ID. responses: - "200": + '200': description: A list of all labels for a variable content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostVariablesIDLabels tags: - Variables summary: Add a label to a variable parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: variableID schema: @@ -1698,28 +1444,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The newly added label content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/variables/{variableID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/variables/{variableID}/labels/{labelID}': delete: operationId: DeleteVariablesIDLabelsID tags: - Variables summary: Delete a label from a variable parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: variableID schema: @@ -1733,20 +1479,20 @@ paths: required: true description: The label ID to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Variable not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /write: post: operationId: PostWrite @@ -1760,11 +1506,12 @@ paths: text/plain: schema: type: string + format: byte parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: header name: Content-Encoding - description: When present, its value indicates to the database that compression is applied to the line-protocol body. + description: 'When present, its value indicates to the database that compression is applied to the line-protocol body.' schema: type: string description: Specifies that the line protocol in the body is encoded with gzip or not encoded with identity. @@ -1785,7 +1532,7 @@ paths: - application/vnd.influx.arrow - in: header name: Content-Length - description: Content-Length is an entity header is indicating the size of the entity-body, in bytes, sent to the database. If the length is greater than the database max body configuration option, a 413 response is sent. + description: 'Content-Length is an entity header is indicating the size of the entity-body, in bytes, sent to the database. If the length is greater than the database max body configuration option, a 413 response is sent.' schema: type: integer description: The length in decimal number of octets. @@ -1800,14 +1547,14 @@ paths: - application/json - in: query name: org - description: Specifies the destination organization for writes. Takes either the ID or Name interchangeably. If both `orgID` and `org` are specified, `org` takes precedence. + description: 'Specifies the destination organization for writes. Takes either the ID or Name interchangeably. If both `orgID` and `org` are specified, `org` takes precedence.' required: true schema: type: string description: All points within batch are written to this organization. - in: query name: orgID - description: Specifies the ID of the destination organization for writes. If both `orgID` and `org` are specified, `org` takes precedence. + description: 'Specifies the ID of the destination organization for writes. If both `orgID` and `org` are specified, `org` takes precedence.' schema: type: string - in: query @@ -1821,35 +1568,35 @@ paths: name: precision description: The precision for the unix timestamps within the body line-protocol. schema: - $ref: "#/components/schemas/WritePrecision" + $ref: '#/components/schemas/WritePrecision' responses: - "204": + '204': description: Write data is correctly formatted and accepted for writing to the bucket. - "400": + '400': description: Line protocol poorly formed and no points were written. Response can be used to determine the first malformed line in the body line-protocol. All data in body was rejected and not written. content: application/json: schema: - $ref: "#/components/schemas/LineProtocolError" - "401": + $ref: '#/components/schemas/LineProtocolError' + '401': description: Token does not have sufficient permissions to write to this organization and bucket or the organization and bucket do not exist. content: application/json: schema: - $ref: "#/components/schemas/Error" - "403": + $ref: '#/components/schemas/Error' + '403': description: No token was sent and they are required. content: application/json: schema: - $ref: "#/components/schemas/Error" - "413": + $ref: '#/components/schemas/Error' + '413': description: Write has been rejected because the payload is too large. Error message returns max size supported. All data in body was rejected and not written. content: application/json: schema: - $ref: "#/components/schemas/LineProtocolLengthError" - "429": + $ref: '#/components/schemas/LineProtocolLengthError' + '429': description: Token is temporarily over quota. The Retry-After header describes when to try the write again. headers: Retry-After: @@ -1857,7 +1604,7 @@ paths: schema: type: integer format: int32 - "503": + '503': description: Server is temporarily unavailable to accept writes. The Retry-After header describes when to try the write again. headers: Retry-After: @@ -1870,7 +1617,7 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /delete: post: operationId: PostDelete @@ -1881,9 +1628,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/DeletePredicateRequest" + $ref: '#/components/schemas/DeletePredicateRequest' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: org description: Specifies the organization to delete data from. @@ -1908,84 +1655,32 @@ paths: type: string description: Only points from this bucket ID are deleted. responses: - "204": + '204': description: delete has been accepted - "400": - description: invalid request. + '400': + description: Invalid request. content: application/json: schema: - $ref: "#/components/schemas/Error" - "404": - description: the bucket or organization is not found. - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - "403": + $ref: '#/components/schemas/Error' + '403': description: no token was sent or does not have sufficient permissions. content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' + '404': + description: the bucket or organization is not found. + content: + application/json: + schema: + $ref: '#/components/schemas/Error' default: description: internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" - /ready: - servers: - - url: / - get: - operationId: GetReady - tags: - - Ready - summary: Get the readiness of an instance at startup - parameters: - - $ref: "#/components/parameters/TraceSpan" - responses: - "200": - description: The instance is ready - content: - application/json: - schema: - $ref: "#/components/schemas/Ready" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - /health: - servers: - - url: / - get: - operationId: GetHealth - tags: - - Health - summary: Get the health of an instance - parameters: - - $ref: "#/components/parameters/TraceSpan" - responses: - "200": - description: The instance is healthy - content: - application/json: - schema: - $ref: "#/components/schemas/HealthCheck" - "503": - description: The instance is unhealthy - content: - application/json: - schema: - $ref: "#/components/schemas/HealthCheck" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /sources: post: operationId: PostSources @@ -1993,60 +1688,60 @@ paths: - Sources summary: Create a source parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Source to create required: true content: application/json: schema: - $ref: "#/components/schemas/Source" + $ref: '#/components/schemas/Source' responses: - "201": + '201': description: Created Source content: application/json: schema: - $ref: "#/components/schemas/Source" + $ref: '#/components/schemas/Source' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' get: operationId: GetSources tags: - Sources summary: Get all sources parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: org description: The organization name. schema: type: string responses: - "200": + '200': description: All sources content: application/json: schema: - $ref: "#/components/schemas/Sources" + $ref: '#/components/schemas/Sources' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /sources/{sourceID}: + $ref: '#/components/schemas/Error' + '/sources/{sourceID}': delete: operationId: DeleteSourcesID tags: - Sources summary: Delete a source parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: sourceID schema: @@ -2054,27 +1749,27 @@ paths: required: true description: The source ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: View not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchSourcesID tags: - Sources summary: Update a Source parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: sourceID schema: @@ -2087,33 +1782,33 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Source" + $ref: '#/components/schemas/Source' responses: - "200": + '200': description: Created Source content: application/json: schema: - $ref: "#/components/schemas/Source" - "404": + $ref: '#/components/schemas/Source' + '404': description: Source not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' get: operationId: GetSourcesID tags: - Sources summary: Get a source parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: sourceID schema: @@ -2121,32 +1816,32 @@ paths: required: true description: The source ID. responses: - "200": + '200': description: A source content: application/json: schema: - $ref: "#/components/schemas/Source" - "404": + $ref: '#/components/schemas/Source' + '404': description: Source not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /sources/{sourceID}/health: + $ref: '#/components/schemas/Error' + '/sources/{sourceID}/health': get: operationId: GetSourcesIDHealth tags: - Sources summary: Get the health of a source parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: sourceID schema: @@ -2154,25 +1849,25 @@ paths: required: true description: The source ID. responses: - "200": + '200': description: The source is healthy content: application/json: schema: - $ref: "#/components/schemas/HealthCheck" - "503": + $ref: '#/components/schemas/HealthCheck' + '503': description: The source is not healthy content: application/json: schema: - $ref: "#/components/schemas/HealthCheck" + $ref: '#/components/schemas/HealthCheck' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /sources/{sourceID}/buckets: + $ref: '#/components/schemas/Error' + '/sources/{sourceID}/buckets': get: operationId: GetSourcesIDBuckets tags: @@ -2180,7 +1875,7 @@ paths: - Buckets summary: Get buckets in a source parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: sourceID schema: @@ -2193,24 +1888,24 @@ paths: schema: type: string responses: - "200": + '200': description: A source content: application/json: schema: - $ref: "#/components/schemas/Buckets" - "404": + $ref: '#/components/schemas/Buckets' + '404': description: Source not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /labels: post: operationId: PostLabels @@ -2223,53 +1918,53 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelCreateRequest" + $ref: '#/components/schemas/LabelCreateRequest' responses: - "201": + '201': description: Added label content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' get: operationId: GetLabels tags: - Labels summary: Get all labels parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: orgID description: The organization ID. schema: type: string responses: - "200": + '200': description: All labels content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /labels/{labelID}: + $ref: '#/components/schemas/Error' + '/labels/{labelID}': get: operationId: GetLabelsID tags: - Labels summary: Get a label parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: labelID schema: @@ -2277,18 +1972,18 @@ paths: required: true description: The ID of the label to update. responses: - "200": + '200': description: A label content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchLabelsID tags: @@ -2300,9 +1995,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelUpdate" + $ref: '#/components/schemas/LabelUpdate' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: labelID schema: @@ -2310,31 +2005,31 @@ paths: required: true description: The ID of the label to update. responses: - "200": + '200': description: Updated label content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" - "404": + $ref: '#/components/schemas/LabelResponse' + '404': description: Label not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteLabelsID tags: - Labels summary: Delete a label parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: labelID schema: @@ -2342,20 +2037,20 @@ paths: required: true description: The ID of the label to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Label not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /dashboards: post: operationId: PostDashboards @@ -2363,39 +2058,39 @@ paths: - Dashboards summary: Create a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Dashboard to create required: true content: application/json: schema: - $ref: "#/components/schemas/CreateDashboardRequest" + $ref: '#/components/schemas/CreateDashboardRequest' responses: - "201": + '201': description: Added dashboard content: application/json: schema: oneOf: - - $ref: "#/components/schemas/Dashboard" - - $ref: "#/components/schemas/DashboardWithViewProperties" + - $ref: '#/components/schemas/Dashboard' + - $ref: '#/components/schemas/DashboardWithViewProperties' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' get: operationId: GetDashboards tags: - Dashboards summary: Get all dashboards parameters: - - $ref: "#/components/parameters/TraceSpan" - - $ref: "#/components/parameters/Offset" - - $ref: "#/components/parameters/Limit" - - $ref: "#/components/parameters/Descending" + - $ref: '#/components/parameters/TraceSpan' + - $ref: '#/components/parameters/Offset' + - $ref: '#/components/parameters/Limit' + - $ref: '#/components/parameters/Descending' - in: query name: owner description: The owner ID. @@ -2407,12 +2102,12 @@ paths: schema: type: string enum: - - "ID" - - "CreatedAt" - - "UpdatedAt" + - ID + - CreatedAt + - UpdatedAt - in: query name: id - description: List of dashboard IDs to return. If both `id` and `owner` are specified, only `id` is used. + description: 'List of dashboard IDs to return. If both `id` and `owner` are specified, only `id` is used.' schema: type: array items: @@ -2428,26 +2123,26 @@ paths: schema: type: string responses: - "200": + '200': description: All dashboards content: application/json: schema: - $ref: "#/components/schemas/Dashboards" + $ref: '#/components/schemas/Dashboards' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}': get: operationId: GetDashboardsID tags: - Dashboards summary: Get a Dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2463,26 +2158,26 @@ paths: - properties description: Includes the cell view properties in the response if set to `properties` responses: - "200": + '200': description: Get a single dashboard content: application/json: schema: oneOf: - - $ref: "#/components/schemas/Dashboard" - - $ref: "#/components/schemas/DashboardWithViewProperties" - "404": + - $ref: '#/components/schemas/Dashboard' + - $ref: '#/components/schemas/DashboardWithViewProperties' + '404': description: Dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchDashboardsID tags: @@ -2497,16 +2192,16 @@ paths: type: object properties: name: - description: optional, when provided will replace the name + description: 'optional, when provided will replace the name' type: string description: - description: optional, when provided will replace the description + description: 'optional, when provided will replace the description' type: string cells: - description: optional, when provided will replace all existing cells with the cells provided - $ref: "#/components/schemas/CellWithViewProperties" + description: 'optional, when provided will replace all existing cells with the cells provided' + $ref: '#/components/schemas/CellWithViewProperties' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2514,31 +2209,31 @@ paths: required: true description: The ID of the dashboard to update. responses: - "200": + '200': description: Updated dashboard content: application/json: schema: - $ref: "#/components/schemas/Dashboard" - "404": + $ref: '#/components/schemas/Dashboard' + '404': description: Dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteDashboardsID tags: - Dashboards summary: Delete a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2546,21 +2241,21 @@ paths: required: true description: The ID of the dashboard to update. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/cells": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/cells': put: operationId: PutDashboardsIDCells tags: @@ -2573,9 +2268,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Cells" + $ref: '#/components/schemas/Cells' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2583,24 +2278,24 @@ paths: required: true description: The ID of the dashboard to update. responses: - "201": + '201': description: Replaced dashboard cells content: application/json: schema: - $ref: "#/components/schemas/Dashboard" - "404": + $ref: '#/components/schemas/Dashboard' + '404': description: Dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDashboardsIDCells tags: @@ -2613,9 +2308,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/CreateCell" + $ref: '#/components/schemas/CreateCell' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2623,25 +2318,25 @@ paths: required: true description: The ID of the dashboard to update. responses: - "201": + '201': description: Cell successfully added content: application/json: schema: - $ref: "#/components/schemas/Cell" - "404": + $ref: '#/components/schemas/Cell' + '404': description: Dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/cells/{cellID}": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/cells/{cellID}': patch: operationId: PatchDashboardsIDCellsID tags: @@ -2654,9 +2349,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/CellUpdate" + $ref: '#/components/schemas/CellUpdate' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2670,24 +2365,24 @@ paths: required: true description: The ID of the cell to update. responses: - "200": + '200': description: Updated dashboard cell content: application/json: schema: - $ref: "#/components/schemas/Cell" - "404": + $ref: '#/components/schemas/Cell' + '404': description: Cell or dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteDashboardsIDCellsID tags: @@ -2695,7 +2390,7 @@ paths: - Dashboards summary: Delete a dashboard cell parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2709,21 +2404,21 @@ paths: required: true description: The ID of the cell to delete. responses: - "204": + '204': description: Cell successfully deleted - "404": + '404': description: Cell or dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/cells/{cellID}/view": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/cells/{cellID}/view': get: operationId: GetDashboardsIDCellsIDView tags: @@ -2732,7 +2427,7 @@ paths: - Views summary: Retrieve the view for a cell parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2746,24 +2441,24 @@ paths: required: true description: The cell ID. responses: - "200": + '200': description: A dashboard cells view content: application/json: schema: - $ref: "#/components/schemas/View" - "404": + $ref: '#/components/schemas/View' + '404': description: Cell or dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchDashboardsIDCellsIDView tags: @@ -2776,9 +2471,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/View" + $ref: '#/components/schemas/View' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2792,32 +2487,32 @@ paths: required: true description: The ID of the cell to update. responses: - "200": + '200': description: Updated cell view content: application/json: schema: - $ref: "#/components/schemas/View" - "404": + $ref: '#/components/schemas/View' + '404': description: Cell or dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/labels": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/labels': get: operationId: GetDashboardsIDLabels tags: - Dashboards summary: List all labels for a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2825,25 +2520,25 @@ paths: required: true description: The dashboard ID. responses: - "200": + '200': description: A list of all labels for a dashboard content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDashboardsIDLabels tags: - Dashboards summary: Add a label to a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2856,28 +2551,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The label added to the dashboard content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/labels/{labelID}': delete: operationId: DeleteDashboardsIDLabelsID tags: - Dashboards summary: Delete a label from a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2891,21 +2586,21 @@ paths: required: true description: The ID of the label to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Dashboard not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/members": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/members': get: operationId: GetDashboardsIDMembers tags: @@ -2913,7 +2608,7 @@ paths: - Dashboards summary: List all dashboard members parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2921,18 +2616,18 @@ paths: required: true description: The dashboard ID. responses: - "200": + '200': description: A list of users who have member privileges for a dashboard content: application/json: schema: - $ref: "#/components/schemas/ResourceMembers" + $ref: '#/components/schemas/ResourceMembers' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDashboardsIDMembers tags: @@ -2940,7 +2635,7 @@ paths: - Dashboards summary: Add a member to a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -2953,21 +2648,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Added to dashboard members content: application/json: schema: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/members/{userID}": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/members/{userID}': delete: operationId: DeleteDashboardsIDMembersID tags: @@ -2975,7 +2670,7 @@ paths: - Dashboards summary: Remove a member from a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -2989,15 +2684,15 @@ paths: required: true description: The dashboard ID. responses: - "204": + '204': description: Member removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/owners": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/owners': get: operationId: GetDashboardsIDOwners tags: @@ -3005,7 +2700,7 @@ paths: - Dashboards summary: List all dashboard owners parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -3013,18 +2708,18 @@ paths: required: true description: The dashboard ID. responses: - "200": + '200': description: A list of users who have owner privileges for a dashboard content: application/json: schema: - $ref: "#/components/schemas/ResourceOwners" + $ref: '#/components/schemas/ResourceOwners' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostDashboardsIDOwners tags: @@ -3032,7 +2727,7 @@ paths: - Dashboards summary: Add an owner to a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: dashboardID schema: @@ -3045,21 +2740,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Added to dashboard owners content: application/json: schema: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/dashboards/{dashboardID}/owners/{userID}": + $ref: '#/components/schemas/Error' + '/dashboards/{dashboardID}/owners/{userID}': delete: operationId: DeleteDashboardsIDOwnersID tags: @@ -3067,7 +2762,7 @@ paths: - Dashboards summary: Remove an owner from a dashboard parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -3081,14 +2776,14 @@ paths: required: true description: The dashboard ID. responses: - "204": + '204': description: Owner removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /query/ast: post: operationId: PostQueryAst @@ -3096,7 +2791,7 @@ paths: tags: - Query parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: header name: Content-Type schema: @@ -3108,47 +2803,47 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LanguageRequest" + $ref: '#/components/schemas/LanguageRequest' responses: - "200": + '200': description: Abstract syntax tree of flux query. content: application/json: schema: - $ref: "#/components/schemas/ASTResponse" + $ref: '#/components/schemas/ASTResponse' default: description: Any response other than 200 is an internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /query/suggestions: get: operationId: GetQuerySuggestions tags: - Query parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' responses: - "200": + '200': description: Suggestions for next functions in call chain content: application/json: schema: - $ref: "#/components/schemas/FluxSuggestions" + $ref: '#/components/schemas/FluxSuggestions' default: description: Any response other than 200 is an internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/query/suggestions/{name}": + $ref: '#/components/schemas/Error' + '/query/suggestions/{name}': get: operationId: GetQuerySuggestionsName tags: - Query parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: name schema: @@ -3156,174 +2851,18 @@ paths: required: true description: The name of the branching suggestion. responses: - "200": + '200': description: Suggestions for next functions in call chain content: application/json: schema: - $ref: "#/components/schemas/FluxSuggestion" + $ref: '#/components/schemas/FluxSuggestion' default: description: Any response other than 200 is an internal server error content: application/json: schema: - $ref: "#/components/schemas/Error" - /authorizations: - get: - operationId: GetAuthorizations - tags: - - Authorizations - summary: List all authorizations - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: query - name: userID - schema: - type: string - description: Only show authorizations that belong to a user ID. - - in: query - name: user - schema: - type: string - description: Only show authorizations that belong to a user name. - - in: query - name: orgID - schema: - type: string - description: Only show authorizations that belong to an organization ID. - - in: query - name: org - schema: - type: string - description: Only show authorizations that belong to a organization name. - responses: - "200": - description: A list of authorizations - content: - application/json: - schema: - $ref: "#/components/schemas/Authorizations" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - post: - operationId: PostAuthorizations - tags: - - Authorizations - summary: Create an authorization - parameters: - - $ref: "#/components/parameters/TraceSpan" - requestBody: - description: Authorization to create - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/Authorization" - responses: - "201": - description: Authorization created - content: - application/json: - schema: - $ref: "#/components/schemas/Authorization" - "400": - description: Invalid request - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - /authorizations/{authID}: - get: - operationId: GetAuthorizationsID - tags: - - Authorizations - summary: Retrieve an authorization - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: authID - schema: - type: string - required: true - description: The ID of the authorization to get. - responses: - "200": - description: Authorization details - content: - application/json: - schema: - $ref: "#/components/schemas/Authorization" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - patch: - operationId: PatchAuthorizationsID - tags: - - Authorizations - summary: Update an authorization to be active or inactive - requestBody: - description: Authorization to update - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/AuthorizationUpdateRequest" - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: authID - schema: - type: string - required: true - description: The ID of the authorization to update. - responses: - "200": - description: The active or inactie authorization - content: - application/json: - schema: - $ref: "#/components/schemas/Authorization" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - delete: - operationId: DeleteAuthorizationsID - tags: - - Authorizations - summary: Delete an authorization - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: authID - schema: - type: string - required: true - description: The ID of the authorization to delete. - responses: - "204": - description: Authorization deleted - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /query/analyze: post: operationId: PostQueryAnalyze @@ -3331,7 +2870,7 @@ paths: - Query summary: Analyze an InfluxQL or Flux query parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: header name: Content-Type schema: @@ -3343,14 +2882,14 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Query" + $ref: '#/components/schemas/Query' responses: - "200": + '200': description: Query analyze results. Errors will be empty if the query is valid. content: application/json: schema: - $ref: "#/components/schemas/AnalyzeQueryResponse" + $ref: '#/components/schemas/AnalyzeQueryResponse' default: description: Internal server error headers: @@ -3365,7 +2904,7 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /query: post: operationId: PostQuery @@ -3373,10 +2912,10 @@ paths: - Query summary: Query InfluxDB parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: header name: Accept-Encoding - description: The Accept-Encoding request HTTP header advertises which content encoding, usually a compression algorithm, the client is able to understand. + description: 'The Accept-Encoding request HTTP header advertises which content encoding, usually a compression algorithm, the client is able to understand.' schema: type: string description: Specifies that the query response in the body should be encoded with gzip or not encoded with identity. @@ -3393,12 +2932,12 @@ paths: - application/vnd.flux - in: query name: org - description: Specifies the name of the organization executing the query. Takes either the ID or Name interchangeably. If both `orgID` and `org` are specified, `org` takes precedence. + description: 'Specifies the name of the organization executing the query. Takes either the ID or Name interchangeably. If both `orgID` and `org` are specified, `org` takes precedence.' schema: type: string - in: query name: orgID - description: Specifies the ID of the organization executing the query. If both `orgID` and `org` are specified, `org` takes precedence. + description: 'Specifies the ID of the organization executing the query. If both `orgID` and `org` are specified, `org` takes precedence.' schema: type: string requestBody: @@ -3407,17 +2946,17 @@ paths: application/json: schema: oneOf: - - $ref: "#/components/schemas/Query" - - $ref: "#/components/schemas/InfluxQLQuery" + - $ref: '#/components/schemas/Query' + - $ref: '#/components/schemas/InfluxQLQuery' application/vnd.flux: schema: type: string responses: - "200": + '200': description: Query results headers: Content-Encoding: - description: The Content-Encoding entity header is used to compress the media-type. When present, its value indicates which encodings were applied to the entity-body + description: 'The Content-Encoding entity header is used to compress the media-type. When present, its value indicates which encodings were applied to the entity-body' schema: type: string description: Specifies that the response in the body is encoded with gzip or not encoded with identity. @@ -3426,7 +2965,7 @@ paths: - gzip - identity Trace-Id: - description: The Trace-Id header reports the request's trace ID, if one was generated. + description: 'The Trace-Id header reports the request''s trace ID, if one was generated.' schema: type: string description: Specifies the request's trace ID. @@ -3434,16 +2973,13 @@ paths: text/csv: schema: type: string - example: > - result,table,_start,_stop,_time,region,host,_value - mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:00Z,east,A,15.43 - mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:20Z,east,B,59.25 - mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:40Z,east,C,52.62 + example: | + result,table,_start,_stop,_time,region,host,_value mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:00Z,east,A,15.43 mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:20Z,east,B,59.25 mean,0,2018-05-08T20:50:00Z,2018-05-08T20:51:00Z,2018-05-08T20:50:40Z,east,C,52.62 application/vnd.influx.arrow: schema: type: string format: binary - "429": + '429': description: Token is temporarily over quota. The Retry-After header describes when to try the read again. headers: Retry-After: @@ -3456,7 +2992,7 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /buckets: get: operationId: GetBuckets @@ -3464,10 +3000,10 @@ paths: - Buckets summary: List all buckets parameters: - - $ref: "#/components/parameters/TraceSpan" - - $ref: "#/components/parameters/Offset" - - $ref: "#/components/parameters/Limit" - - $ref: "#/components/parameters/After" + - $ref: '#/components/parameters/TraceSpan' + - $ref: '#/components/parameters/Offset' + - $ref: '#/components/parameters/Limit' + - $ref: '#/components/parameters/After' - in: query name: org description: The organization name. @@ -3484,59 +3020,59 @@ paths: schema: type: string responses: - "200": + '200': description: A list of buckets content: application/json: schema: - $ref: "#/components/schemas/Buckets" + $ref: '#/components/schemas/Buckets' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostBuckets tags: - Buckets summary: Create a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Bucket to create required: true content: application/json: schema: - $ref: "#/components/schemas/PostBucketRequest" + $ref: '#/components/schemas/PostBucketRequest' responses: - "201": + '201': description: Bucket created content: application/json: schema: - $ref: "#/components/schemas/Bucket" - 422: + $ref: '#/components/schemas/Bucket' + '422': description: Request body failed validation content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}': get: operationId: GetBucketsID tags: - Buckets summary: Retrieve a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3544,18 +3080,18 @@ paths: required: true description: The bucket ID. responses: - "200": + '200': description: Bucket details content: application/json: schema: - $ref: "#/components/schemas/Bucket" + $ref: '#/components/schemas/Bucket' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchBucketsID tags: @@ -3567,9 +3103,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Bucket" + $ref: '#/components/schemas/Bucket' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3577,25 +3113,25 @@ paths: required: true description: The bucket ID. responses: - "200": + '200': description: An updated bucket content: application/json: schema: - $ref: "#/components/schemas/Bucket" + $ref: '#/components/schemas/Bucket' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteBucketsID tags: - Buckets summary: Delete a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3603,28 +3139,28 @@ paths: required: true description: The ID of the bucket to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Bucket not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}/labels": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}/labels': get: operationId: GetBucketsIDLabels tags: - Buckets summary: List all labels for a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3632,25 +3168,25 @@ paths: required: true description: The bucket ID. responses: - "200": + '200': description: A list of all labels for a bucket content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostBucketsIDLabels tags: - Buckets summary: Add a label to a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3663,28 +3199,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The newly added label content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}/labels/{labelID}': delete: operationId: DeleteBucketsIDLabelsID tags: - Buckets summary: Delete a label from a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3698,21 +3234,21 @@ paths: required: true description: The ID of the label to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Bucket not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}/members": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}/members': get: operationId: GetBucketsIDMembers tags: @@ -3720,7 +3256,7 @@ paths: - Buckets summary: List all users with member privileges for a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3728,18 +3264,18 @@ paths: required: true description: The bucket ID. responses: - "200": + '200': description: A list of bucket members content: application/json: schema: - $ref: "#/components/schemas/ResourceMembers" + $ref: '#/components/schemas/ResourceMembers' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostBucketsIDMembers tags: @@ -3747,7 +3283,7 @@ paths: - Buckets summary: Add a member to a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3760,21 +3296,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Member added to bucket content: application/json: schema: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}/members/{userID}": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}/members/{userID}': delete: operationId: DeleteBucketsIDMembersID tags: @@ -3782,7 +3318,7 @@ paths: - Buckets summary: Remove a member from a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -3796,15 +3332,15 @@ paths: required: true description: The bucket ID. responses: - "204": + '204': description: Member removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}/owners": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}/owners': get: operationId: GetBucketsIDOwners tags: @@ -3812,7 +3348,7 @@ paths: - Buckets summary: List all owners of a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3820,18 +3356,18 @@ paths: required: true description: The bucket ID. responses: - "200": + '200': description: A list of bucket owners content: application/json: schema: - $ref: "#/components/schemas/ResourceOwners" + $ref: '#/components/schemas/ResourceOwners' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostBucketsIDOwners tags: @@ -3839,7 +3375,7 @@ paths: - Buckets summary: Add an owner to a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: bucketID schema: @@ -3852,21 +3388,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Bucket owner added content: application/json: schema: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/buckets/{bucketID}/owners/{userID}": + $ref: '#/components/schemas/Error' + '/buckets/{bucketID}/owners/{userID}': delete: operationId: DeleteBucketsIDOwnersID tags: @@ -3874,7 +3410,7 @@ paths: - Buckets summary: Remove an owner from a bucket parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -3888,14 +3424,14 @@ paths: required: true description: The bucket ID. responses: - "204": + '204': description: Owner removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /orgs: get: operationId: GetOrgs @@ -3903,10 +3439,10 @@ paths: - Organizations summary: List all organizations parameters: - - $ref: "#/components/parameters/TraceSpan" - - $ref: "#/components/parameters/Offset" - - $ref: "#/components/parameters/Limit" - - $ref: "#/components/parameters/Descending" + - $ref: '#/components/parameters/TraceSpan' + - $ref: '#/components/parameters/Offset' + - $ref: '#/components/parameters/Limit' + - $ref: '#/components/parameters/Descending' - in: query name: org schema: @@ -3923,53 +3459,53 @@ paths: type: string description: Filter organizations to a specific user ID. responses: - "200": + '200': description: A list of organizations content: application/json: schema: - $ref: "#/components/schemas/Organizations" + $ref: '#/components/schemas/Organizations' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostOrgs tags: - Organizations summary: Create an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Organization to create required: true content: application/json: schema: - $ref: "#/components/schemas/Organization" + $ref: '#/components/schemas/Organization' responses: - "201": + '201': description: Organization created content: application/json: schema: - $ref: "#/components/schemas/Organization" + $ref: '#/components/schemas/Organization' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}": + $ref: '#/components/schemas/Error' + '/orgs/{orgID}': get: operationId: GetOrgsID tags: - Organizations summary: Retrieve an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -3977,18 +3513,18 @@ paths: required: true description: The ID of the organization to get. responses: - "200": + '200': description: Organization details content: application/json: schema: - $ref: "#/components/schemas/Organization" + $ref: '#/components/schemas/Organization' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchOrgsID tags: @@ -4000,9 +3536,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Organization" + $ref: '#/components/schemas/Organization' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4010,25 +3546,25 @@ paths: required: true description: The ID of the organization to get. responses: - "200": + '200': description: Organization updated content: application/json: schema: - $ref: "#/components/schemas/Organization" + $ref: '#/components/schemas/Organization' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteOrgsID tags: - Organizations summary: Delete an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4036,21 +3572,21 @@ paths: required: true description: The ID of the organization to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Organization not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}/secrets": + $ref: '#/components/schemas/Error' + '/orgs/{orgID}/secrets': get: operationId: GetOrgsIDSecrets tags: @@ -4058,7 +3594,7 @@ paths: - Organizations summary: List all secret keys for an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4066,18 +3602,18 @@ paths: required: true description: The organization ID. responses: - "200": + '200': description: A list of all secret keys content: application/json: schema: - $ref: "#/components/schemas/SecretKeysResponse" + $ref: '#/components/schemas/SecretKeysResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchOrgsIDSecrets tags: @@ -4085,7 +3621,7 @@ paths: - Organizations summary: Update secrets in an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4098,17 +3634,17 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Secrets" + $ref: '#/components/schemas/Secrets' responses: - "204": + '204': description: Keys successfully patched default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}/secrets/delete": # had to make this because swagger wouldn't let me have a request body with a DELETE + $ref: '#/components/schemas/Error' + '/orgs/{orgID}/secrets/delete': post: operationId: PostOrgsIDSecrets tags: @@ -4116,7 +3652,7 @@ paths: - Organizations summary: Delete secrets from an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4129,17 +3665,17 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/SecretKeys" + $ref: '#/components/schemas/SecretKeys' responses: - "204": + '204': description: Keys successfully patched default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}/members": + $ref: '#/components/schemas/Error' + '/orgs/{orgID}/members': get: operationId: GetOrgsIDMembers tags: @@ -4147,7 +3683,7 @@ paths: - Organizations summary: List all members of an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4155,24 +3691,24 @@ paths: required: true description: The organization ID. responses: - "200": + '200': description: A list of organization members content: application/json: schema: - $ref: "#/components/schemas/ResourceMembers" - "404": + $ref: '#/components/schemas/ResourceMembers' + '404': description: Organization not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostOrgsIDMembers tags: @@ -4180,7 +3716,7 @@ paths: - Organizations summary: Add a member to an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4193,21 +3729,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Added to organization created content: application/json: schema: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}/members/{userID}": + $ref: '#/components/schemas/Error' + '/orgs/{orgID}/members/{userID}': delete: operationId: DeleteOrgsIDMembersID tags: @@ -4215,7 +3751,7 @@ paths: - Organizations summary: Remove a member from an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -4229,15 +3765,15 @@ paths: required: true description: The organization ID. responses: - "204": + '204': description: Member removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}/owners": + $ref: '#/components/schemas/Error' + '/orgs/{orgID}/owners': get: operationId: GetOrgsIDOwners tags: @@ -4245,7 +3781,7 @@ paths: - Organizations summary: List all owners of an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4253,24 +3789,24 @@ paths: required: true description: The organization ID. responses: - "200": + '200': description: A list of organization owners content: application/json: schema: - $ref: "#/components/schemas/ResourceOwners" - "404": + $ref: '#/components/schemas/ResourceOwners' + '404': description: Organization not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostOrgsIDOwners tags: @@ -4278,7 +3814,7 @@ paths: - Organizations summary: Add an owner to an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: orgID schema: @@ -4291,21 +3827,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Organization owner added content: application/json: schema: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/orgs/{orgID}/owners/{userID}": + $ref: '#/components/schemas/Error' + '/orgs/{orgID}/owners/{userID}': delete: operationId: DeleteOrgsIDOwnersID tags: @@ -4313,7 +3849,7 @@ paths: - Organizations summary: Remove an owner from an organization parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -4327,14 +3863,14 @@ paths: required: true description: The organization ID. responses: - "204": + '204': description: Owner removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /stacks: get: operationId: ListStacks @@ -4359,7 +3895,7 @@ paths: type: string description: A collection of stackIDs to filter the list by. responses: - "200": + '200': description: Influx stacks found content: application/json: @@ -4369,13 +3905,13 @@ paths: stacks: type: array items: - $ref: "#/components/schemas/Stack" + $ref: '#/components/schemas/Stack' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: CreateStack tags: @@ -4400,19 +3936,19 @@ paths: items: type: string responses: - "201": + '201': description: InfluxDB Stack created content: application/json: schema: - $ref: "#/components/schemas/Stack" + $ref: '#/components/schemas/Stack' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /stacks/{stack_id}: + $ref: '#/components/schemas/Error' + '/stacks/{stack_id}': get: operationId: ReadStack tags: @@ -4426,18 +3962,18 @@ paths: type: string description: The stack id responses: - "200": + '200': description: Read an influx stack by ID content: application/json: schema: - $ref: "#/components/schemas/Stack" + $ref: '#/components/schemas/Stack' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: UpdateStack tags: @@ -4480,20 +4016,22 @@ paths: type: string templateMetaName: type: string - required: ["kind", "resourceID"] + required: + - kind + - resourceID responses: - "200": + '200': description: Influx stack updated content: application/json: schema: - $ref: "#/components/schemas/Stack" + $ref: '#/components/schemas/Stack' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteStack tags: @@ -4513,15 +4051,15 @@ paths: type: string description: The organization id of the user responses: - "204": + '204': description: Stack and all its associated resources are deleted default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /stacks/{stack_id}/uninstall: + $ref: '#/components/schemas/Error' + '/stacks/{stack_id}/uninstall': post: operationId: UninstallStack tags: @@ -4535,18 +4073,18 @@ paths: type: string description: The stack id responses: - "200": + '200': description: Influx stack uninstalled content: application/json: schema: - $ref: "#/components/schemas/Stack" + $ref: '#/components/schemas/Stack' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /templates/apply: post: operationId: ApplyTemplate @@ -4558,39 +4096,34 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/TemplateApply" + $ref: '#/components/schemas/TemplateApply' application/x-jsonnet: schema: - $ref: "#/components/schemas/TemplateApply" + $ref: '#/components/schemas/TemplateApply' text/yml: schema: - $ref: "#/components/schemas/TemplateApply" + $ref: '#/components/schemas/TemplateApply' responses: - "200": - 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. + '200': + 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. content: application/json: schema: - $ref: "#/components/schemas/TemplateSummary" - "201": - 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` + $ref: '#/components/schemas/TemplateSummary' + '201': + 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` content: application/json: schema: - $ref: "#/components/schemas/TemplateSummary" + $ref: '#/components/schemas/TemplateSummary' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /templates/export: post: operationId: ExportTemplate @@ -4604,24 +4137,24 @@ paths: application/json: schema: oneOf: - - $ref: "#/components/schemas/TemplateExportByID" - - $ref: "#/components/schemas/TemplateExportByName" + - $ref: '#/components/schemas/TemplateExportByID' + - $ref: '#/components/schemas/TemplateExportByName' responses: - "200": + '200': description: InfluxDB template created content: application/json: schema: - $ref: "#/components/schemas/Template" + $ref: '#/components/schemas/Template' application/x-yaml: schema: - $ref: "#/components/schemas/Template" + $ref: '#/components/schemas/Template' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /tasks: get: operationId: GetTasks @@ -4629,7 +4162,7 @@ paths: - Tasks summary: List all tasks parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: query name: name description: Returns task with a specific name. @@ -4672,53 +4205,53 @@ paths: default: 100 description: The number of tasks to return responses: - "200": + '200': description: A list of tasks content: application/json: schema: - $ref: "#/components/schemas/Tasks" + $ref: '#/components/schemas/Tasks' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTasks tags: - Tasks summary: Create a new task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: Task to create required: true content: application/json: schema: - $ref: "#/components/schemas/TaskCreateRequest" + $ref: '#/components/schemas/TaskCreateRequest' responses: - "201": + '201': description: Task created content: application/json: schema: - $ref: "#/components/schemas/Task" + $ref: '#/components/schemas/Task' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}': get: operationId: GetTasksID tags: - Tasks summary: Retrieve a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4726,18 +4259,18 @@ paths: required: true description: The task ID. responses: - "200": + '200': description: Task details content: application/json: schema: - $ref: "#/components/schemas/Task" + $ref: '#/components/schemas/Task' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchTasksID tags: @@ -4750,9 +4283,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/TaskUpdateRequest" + $ref: '#/components/schemas/TaskUpdateRequest' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4760,18 +4293,18 @@ paths: required: true description: The task ID. responses: - "200": + '200': description: Task updated content: application/json: schema: - $ref: "#/components/schemas/Task" + $ref: '#/components/schemas/Task' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteTasksID tags: @@ -4779,7 +4312,7 @@ paths: summary: Delete a task description: Deletes a task and all associated records parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4787,22 +4320,22 @@ paths: required: true description: The ID of the task to delete. responses: - "204": + '204': description: Task deleted default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/runs": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/runs': get: operationId: GetTasksIDRuns tags: - Tasks summary: List runs for a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4827,33 +4360,33 @@ paths: schema: type: string format: date-time - description: Filter runs to those scheduled after this time, RFC3339 + description: 'Filter runs to those scheduled after this time, RFC3339' - in: query name: beforeTime schema: type: string format: date-time - description: Filter runs to those scheduled before this time, RFC3339 + description: 'Filter runs to those scheduled before this time, RFC3339' responses: - "200": + '200': description: A list of task runs content: application/json: schema: - $ref: "#/components/schemas/Runs" + $ref: '#/components/schemas/Runs' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTasksIDRuns tags: - Tasks - summary: Manually start a task run, overriding the current schedule + summary: 'Manually start a task run, overriding the current schedule' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4863,28 +4396,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/RunManually" + $ref: '#/components/schemas/RunManually' responses: - "201": + '201': description: Run scheduled to start content: application/json: schema: - $ref: "#/components/schemas/Run" + $ref: '#/components/schemas/Run' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/runs/{runID}": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/runs/{runID}': get: operationId: GetTasksIDRunsID tags: - Tasks summary: Retrieve a single run for a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4898,25 +4431,25 @@ paths: required: true description: The run ID. responses: - "200": + '200': description: The run record content: application/json: schema: - $ref: "#/components/schemas/Run" + $ref: '#/components/schemas/Run' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteTasksIDRunsID tags: - Tasks summary: Cancel a running task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4930,22 +4463,22 @@ paths: required: true description: The run ID. responses: - "204": + '204': description: Delete has been accepted default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/runs/{runID}/retry": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/runs/{runID}/retry': post: operationId: PostTasksIDRunsIDRetry tags: - Tasks summary: Retry a task run parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4959,26 +4492,26 @@ paths: required: true description: The run ID. responses: - "200": + '200': description: Run that has been queued content: application/json: schema: - $ref: "#/components/schemas/Run" + $ref: '#/components/schemas/Run' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/logs": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/logs': get: operationId: GetTasksIDLogs tags: - Tasks summary: Retrieve all logs for a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -4986,26 +4519,26 @@ paths: required: true description: The task ID. responses: - "200": + '200': description: All logs for a task content: application/json: schema: - $ref: "#/components/schemas/Logs" + $ref: '#/components/schemas/Logs' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/runs/{runID}/logs": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/runs/{runID}/logs': get: operationId: GetTasksIDRunsIDLogs tags: - Tasks summary: Retrieve all logs for a run parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5019,26 +4552,26 @@ paths: required: true description: ID of run to get logs for. responses: - "200": + '200': description: All logs for a run content: application/json: schema: - $ref: "#/components/schemas/Logs" + $ref: '#/components/schemas/Logs' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/labels": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/labels': get: operationId: GetTasksIDLabels tags: - Tasks summary: List all labels for a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5046,25 +4579,25 @@ paths: required: true description: The task ID. responses: - "200": + '200': description: A list of all labels for a task content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTasksIDLabels tags: - Tasks summary: Add a label to a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5077,28 +4610,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: A list of all labels for a task content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/labels/{labelID}': delete: operationId: DeleteTasksIDLabelsID tags: - Tasks summary: Delete a label from a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5112,20 +4645,20 @@ paths: required: true description: The label ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Task not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /flags: get: operationId: GetFlags @@ -5133,20 +4666,20 @@ paths: - Users summary: Return the feature flags for the currently authenticated user parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' responses: - "200": + '200': description: Feature flags for the currently authenticated user content: application/json: schema: - $ref: "#/components/schemas/Flags" + $ref: '#/components/schemas/Flags' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /me: get: operationId: GetMe @@ -5154,20 +4687,20 @@ paths: - Users summary: Return the current authenticated user parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' responses: - "200": + '200': description: Currently authenticated user content: application/json: schema: - $ref: "#/components/schemas/User" + $ref: '#/components/schemas/UserResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /me/password: put: operationId: PutMePassword @@ -5177,24 +4710,24 @@ paths: security: - BasicAuth: [] parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' requestBody: description: New password required: true content: application/json: schema: - $ref: "#/components/schemas/PasswordResetBody" + $ref: '#/components/schemas/PasswordResetBody' responses: - "204": + '204': description: Password successfully updated default: description: Unsuccessful authentication content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/members": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/members': get: operationId: GetTasksIDMembers tags: @@ -5202,7 +4735,7 @@ paths: - Tasks summary: List all task members parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5210,18 +4743,18 @@ paths: required: true description: The task ID. responses: - "200": + '200': description: A list of users who have member privileges for a task content: application/json: schema: - $ref: "#/components/schemas/ResourceMembers" + $ref: '#/components/schemas/ResourceMembers' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTasksIDMembers tags: @@ -5229,7 +4762,7 @@ paths: - Tasks summary: Add a member to a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5242,21 +4775,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Added to task members content: application/json: schema: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/members/{userID}": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/members/{userID}': delete: operationId: DeleteTasksIDMembersID tags: @@ -5264,7 +4797,7 @@ paths: - Tasks summary: Remove a member from a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -5278,15 +4811,15 @@ paths: required: true description: The task ID. responses: - "204": + '204': description: Member removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/owners": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/owners': get: operationId: GetTasksIDOwners tags: @@ -5294,7 +4827,7 @@ paths: - Tasks summary: List all owners of a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5302,18 +4835,18 @@ paths: required: true description: The task ID. responses: - "200": + '200': description: A list of users who have owner privileges for a task content: application/json: schema: - $ref: "#/components/schemas/ResourceOwners" + $ref: '#/components/schemas/ResourceOwners' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostTasksIDOwners tags: @@ -5321,7 +4854,7 @@ paths: - Tasks summary: Add an owner to a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: taskID schema: @@ -5334,21 +4867,21 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/AddResourceMemberRequestBody" + $ref: '#/components/schemas/AddResourceMemberRequestBody' responses: - "201": + '201': description: Added to task owners content: application/json: schema: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/tasks/{taskID}/owners/{userID}": + $ref: '#/components/schemas/Error' + '/tasks/{taskID}/owners/{userID}': delete: operationId: DeleteTasksIDOwnersID tags: @@ -5356,7 +4889,7 @@ paths: - Tasks summary: Remove an owner from a task parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -5370,145 +4903,15 @@ paths: required: true description: The task ID. responses: - "204": + '204': description: Owner removed default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - /users: - get: - operationId: GetUsers - tags: - - Users - summary: List all users - parameters: - - $ref: "#/components/parameters/TraceSpan" - responses: - "200": - description: A list of users - content: - application/json: - schema: - $ref: "#/components/schemas/Users" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - post: - operationId: PostUsers - tags: - - Users - summary: Create a user - parameters: - - $ref: "#/components/parameters/TraceSpan" - requestBody: - description: User to create - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/User" - responses: - "201": - description: User created - content: - application/json: - schema: - $ref: "#/components/schemas/User" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - "/users/{userID}": - get: - operationId: GetUsersID - tags: - - Users - summary: Retrieve a user - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: userID - schema: - type: string - required: true - description: The user ID. - responses: - "200": - description: User details - content: - application/json: - schema: - $ref: "#/components/schemas/User" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - patch: - operationId: PatchUsersID - tags: - - Users - summary: Update a user - requestBody: - description: User update to apply - required: true - content: - application/json: - schema: - $ref: "#/components/schemas/User" - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: userID - schema: - type: string - required: true - description: The ID of the user to update. - responses: - "200": - description: User updated - content: - application/json: - schema: - $ref: "#/components/schemas/User" - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - delete: - operationId: DeleteUsersID - tags: - - Users - summary: Delete a user - parameters: - - $ref: "#/components/parameters/TraceSpan" - - in: path - name: userID - schema: - type: string - required: true - description: The ID of the user to delete. - responses: - "204": - description: User deleted - default: - description: Unexpected error - content: - application/json: - schema: - $ref: "#/components/schemas/Error" - "/users/{userID}/password": + $ref: '#/components/schemas/Error' + '/users/{userID}/password': post: operationId: PostUsersIDPassword tags: @@ -5517,7 +4920,7 @@ paths: security: - BasicAuth: [] parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: userID schema: @@ -5530,16 +4933,16 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/PasswordResetBody" + $ref: '#/components/schemas/PasswordResetBody' responses: - "204": + '204': description: Password successfully updated default: description: Unsuccessful authentication content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /checks: get: operationId: GetChecks @@ -5547,9 +4950,9 @@ paths: - Checks summary: Get all checks parameters: - - $ref: "#/components/parameters/TraceSpan" - - $ref: "#/components/parameters/Offset" - - $ref: "#/components/parameters/Limit" + - $ref: '#/components/parameters/TraceSpan' + - $ref: '#/components/parameters/Offset' + - $ref: '#/components/parameters/Limit' - in: query name: orgID required: true @@ -5557,18 +4960,18 @@ paths: schema: type: string responses: - "200": + '200': description: A list of checks content: application/json: schema: - $ref: "#/components/schemas/Checks" + $ref: '#/components/schemas/Checks' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: CreateCheck tags: @@ -5580,28 +4983,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/PostCheck" + $ref: '#/components/schemas/PostCheck' responses: - "201": + '201': description: Check created content: application/json: schema: - $ref: "#/components/schemas/Check" + $ref: '#/components/schemas/Check' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/checks/{checkID}": + $ref: '#/components/schemas/Error' + '/checks/{checkID}': get: operationId: GetChecksID tags: - Checks summary: Get a check parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5609,18 +5012,18 @@ paths: required: true description: The check ID. responses: - "200": + '200': description: The check requested content: application/json: schema: - $ref: "#/components/schemas/Check" + $ref: '#/components/schemas/Check' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' put: operationId: PutChecksID tags: @@ -5632,9 +5035,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/Check" + $ref: '#/components/schemas/Check' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5642,24 +5045,24 @@ paths: required: true description: The check ID. responses: - "200": + '200': description: An updated check content: application/json: schema: - $ref: "#/components/schemas/Check" - "404": + $ref: '#/components/schemas/Check' + '404': description: The check was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchChecksID tags: @@ -5671,9 +5074,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/CheckPatch" + $ref: '#/components/schemas/CheckPatch' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5681,31 +5084,31 @@ paths: required: true description: The check ID. responses: - "200": + '200': description: An updated check content: application/json: schema: - $ref: "#/components/schemas/Check" - "404": + $ref: '#/components/schemas/Check' + '404': description: The check was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteChecksID tags: - Checks summary: Delete a check parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5713,28 +5116,28 @@ paths: required: true description: The check ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: The check was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/checks/{checkID}/labels": + $ref: '#/components/schemas/Error' + '/checks/{checkID}/labels': get: operationId: GetChecksIDLabels tags: - Checks summary: List all labels for a check parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5742,25 +5145,25 @@ paths: required: true description: The check ID. responses: - "200": + '200': description: A list of all labels for a check content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostChecksIDLabels tags: - Checks summary: Add a label to a check parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5773,28 +5176,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The label was added to the check content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/checks/{checkID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/checks/{checkID}/labels/{labelID}': delete: operationId: DeleteChecksIDLabelsID tags: - Checks summary: Delete label from a check parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5808,20 +5211,20 @@ paths: required: true description: The ID of the label to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Check or label not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /notificationRules: get: operationId: GetNotificationRules @@ -5829,9 +5232,9 @@ paths: - NotificationRules summary: Get all notification rules parameters: - - $ref: "#/components/parameters/TraceSpan" - - $ref: "#/components/parameters/Offset" - - $ref: "#/components/parameters/Limit" + - $ref: '#/components/parameters/TraceSpan' + - $ref: '#/components/parameters/Offset' + - $ref: '#/components/parameters/Limit' - in: query name: orgID required: true @@ -5848,21 +5251,21 @@ paths: description: Only return notification rules that "would match" statuses which contain the tag key value pairs provided. schema: type: string - pattern: ^[a-zA-Z0-9_]+:[a-zA-Z0-9_]+$ - example: env:prod + pattern: '^[a-zA-Z0-9_]+:[a-zA-Z0-9_]+$' + example: 'env:prod' responses: - "200": + '200': description: A list of notification rules content: application/json: schema: - $ref: "#/components/schemas/NotificationRules" + $ref: '#/components/schemas/NotificationRules' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: CreateNotificationRule tags: @@ -5874,28 +5277,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/PostNotificationRule" + $ref: '#/components/schemas/PostNotificationRule' responses: - "201": + '201': description: Notification rule created content: application/json: schema: - $ref: "#/components/schemas/NotificationRule" + $ref: '#/components/schemas/NotificationRule' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/checks/{checkID}/query": + $ref: '#/components/schemas/Error' + '/checks/{checkID}/query': get: operationId: GetChecksIDQuery tags: - Checks summary: Get a check query parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: checkID schema: @@ -5903,38 +5306,38 @@ paths: required: true description: The check ID. responses: - "200": + '200': description: The check query requested content: application/json: schema: - $ref: "#/components/schemas/FluxResponse" - "400": + $ref: '#/components/schemas/FluxResponse' + '400': description: Invalid request content: application/json: schema: - $ref: "#/components/schemas/Error" - "404": + $ref: '#/components/schemas/Error' + '404': description: Check not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationRules/{ruleID}": + $ref: '#/components/schemas/Error' + '/notificationRules/{ruleID}': get: operationId: GetNotificationRulesID tags: - NotificationRules summary: Get a notification rule parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -5942,18 +5345,18 @@ paths: required: true description: The notification rule ID. responses: - "200": + '200': description: The notification rule requested content: application/json: schema: - $ref: "#/components/schemas/NotificationRule" + $ref: '#/components/schemas/NotificationRule' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' put: operationId: PutNotificationRulesID tags: @@ -5965,9 +5368,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/NotificationRule" + $ref: '#/components/schemas/NotificationRule' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -5975,24 +5378,24 @@ paths: required: true description: The notification rule ID. responses: - "200": + '200': description: An updated notification rule content: application/json: schema: - $ref: "#/components/schemas/NotificationRule" - "404": + $ref: '#/components/schemas/NotificationRule' + '404': description: The notification rule was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchNotificationRulesID tags: @@ -6004,9 +5407,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/NotificationRuleUpdate" + $ref: '#/components/schemas/NotificationRuleUpdate' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -6014,31 +5417,31 @@ paths: required: true description: The notification rule ID. responses: - "200": + '200': description: An updated notification rule content: application/json: schema: - $ref: "#/components/schemas/NotificationRule" - "404": + $ref: '#/components/schemas/NotificationRule' + '404': description: The notification rule was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteNotificationRulesID tags: - NotificationRules summary: Delete a notification rule parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -6046,28 +5449,28 @@ paths: required: true description: The notification rule ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: The check was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationRules/{ruleID}/labels": + $ref: '#/components/schemas/Error' + '/notificationRules/{ruleID}/labels': get: operationId: GetNotificationRulesIDLabels tags: - NotificationRules summary: List all labels for a notification rule parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -6075,25 +5478,25 @@ paths: required: true description: The notification rule ID. responses: - "200": + '200': description: A list of all labels for a notification rule content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostNotificationRuleIDLabels tags: - NotificationRules summary: Add a label to a notification rule parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -6106,28 +5509,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The label was added to the notification rule content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationRules/{ruleID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/notificationRules/{ruleID}/labels/{labelID}': delete: operationId: DeleteNotificationRulesIDLabelsID tags: - NotificationRules summary: Delete label from a notification rule parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -6141,28 +5544,28 @@ paths: required: true description: The ID of the label to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Rule or label not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationRules/{ruleID}/query": + $ref: '#/components/schemas/Error' + '/notificationRules/{ruleID}/query': get: operationId: GetNotificationRulesIDQuery tags: - Rules summary: Get a notification rule query parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: ruleID schema: @@ -6170,30 +5573,30 @@ paths: required: true description: The notification rule ID. responses: - "200": + '200': description: The notification rule query requested content: application/json: schema: - $ref: "#/components/schemas/FluxResponse" - "400": + $ref: '#/components/schemas/FluxResponse' + '400': description: Invalid request content: application/json: schema: - $ref: "#/components/schemas/Error" - "404": + $ref: '#/components/schemas/Error' + '404': description: Notification rule not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' /notificationEndpoints: get: operationId: GetNotificationEndpoints @@ -6201,9 +5604,9 @@ paths: - NotificationEndpoints summary: Get all notification endpoints parameters: - - $ref: "#/components/parameters/TraceSpan" - - $ref: "#/components/parameters/Offset" - - $ref: "#/components/parameters/Limit" + - $ref: '#/components/parameters/TraceSpan' + - $ref: '#/components/parameters/Offset' + - $ref: '#/components/parameters/Limit' - in: query name: orgID required: true @@ -6211,18 +5614,18 @@ paths: schema: type: string responses: - "200": + '200': description: A list of notification endpoints content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpoints" + $ref: '#/components/schemas/NotificationEndpoints' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: CreateNotificationEndpoint tags: @@ -6234,28 +5637,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/PostNotificationEndpoint" + $ref: '#/components/schemas/PostNotificationEndpoint' responses: - "201": + '201': description: Notification endpoint created content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpoint" + $ref: '#/components/schemas/NotificationEndpoint' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationEndpoints/{endpointID}": + $ref: '#/components/schemas/Error' + '/notificationEndpoints/{endpointID}': get: operationId: GetNotificationEndpointsID tags: - NotificationEndpoints summary: Get a notification endpoint parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6263,18 +5666,18 @@ paths: required: true description: The notification endpoint ID. responses: - "200": + '200': description: The notification endpoint requested content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpoint" + $ref: '#/components/schemas/NotificationEndpoint' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' put: operationId: PutNotificationEndpointsID tags: @@ -6286,9 +5689,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpoint" + $ref: '#/components/schemas/NotificationEndpoint' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6296,24 +5699,24 @@ paths: required: true description: The notification endpoint ID. responses: - "200": + '200': description: An updated notification endpoint content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpoint" - "404": + $ref: '#/components/schemas/NotificationEndpoint' + '404': description: The notification endpoint was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' patch: operationId: PatchNotificationEndpointsID tags: @@ -6325,9 +5728,9 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpointUpdate" + $ref: '#/components/schemas/NotificationEndpointUpdate' parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6335,31 +5738,31 @@ paths: required: true description: The notification endpoint ID. responses: - "200": + '200': description: An updated notification endpoint content: application/json: schema: - $ref: "#/components/schemas/NotificationEndpoint" - "404": + $ref: '#/components/schemas/NotificationEndpoint' + '404': description: The notification endpoint was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' delete: operationId: DeleteNotificationEndpointsID tags: - NotificationEndpoints summary: Delete a notification endpoint parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6367,28 +5770,28 @@ paths: required: true description: The notification endpoint ID. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: The endpoint was not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationEndpoints/{endpointID}/labels": + $ref: '#/components/schemas/Error' + '/notificationEndpoints/{endpointID}/labels': get: operationId: GetNotificationEndpointsIDLabels tags: - NotificationEndpoints summary: List all labels for a notification endpoint parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6396,25 +5799,25 @@ paths: required: true description: The notification endpoint ID. responses: - "200": + '200': description: A list of all labels for a notification endpoint content: application/json: schema: - $ref: "#/components/schemas/LabelsResponse" + $ref: '#/components/schemas/LabelsResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' post: operationId: PostNotificationEndpointIDLabels tags: - NotificationEndpoints summary: Add a label to a notification endpoint parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6427,28 +5830,28 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/LabelMapping" + $ref: '#/components/schemas/LabelMapping' responses: - "201": + '201': description: The label was added to the notification endpoint content: application/json: schema: - $ref: "#/components/schemas/LabelResponse" + $ref: '#/components/schemas/LabelResponse' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" - "/notificationEndpoints/{endpointID}/labels/{labelID}": + $ref: '#/components/schemas/Error' + '/notificationEndpoints/{endpointID}/labels/{labelID}': delete: operationId: DeleteNotificationEndpointsIDLabelsID tags: - NotificationEndpoints summary: Delete a label from a notification endpoint parameters: - - $ref: "#/components/parameters/TraceSpan" + - $ref: '#/components/parameters/TraceSpan' - in: path name: endpointID schema: @@ -6462,22 +5865,626 @@ paths: required: true description: The ID of the label to delete. responses: - "204": + '204': description: Delete has been accepted - "404": + '404': description: Endpoint or label not found content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' default: description: Unexpected error content: application/json: schema: - $ref: "#/components/schemas/Error" + $ref: '#/components/schemas/Error' + /health: + get: + operationId: GetHealth + tags: + - Health + summary: Get the health of an instance + parameters: + - $ref: '#/components/parameters/TraceSpan' + responses: + '200': + description: The instance is healthy + content: + application/json: + schema: + $ref: '#/components/schemas/HealthCheck' + '503': + description: The instance is unhealthy + content: + application/json: + schema: + $ref: '#/components/schemas/HealthCheck' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /ready: + get: + operationId: GetReady + tags: + - Ready + summary: Get the readiness of an instance at startup + parameters: + - $ref: '#/components/parameters/TraceSpan' + responses: + '200': + description: The instance is ready + content: + application/json: + schema: + $ref: '#/components/schemas/Ready' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /users: + get: + operationId: GetUsers + tags: + - Users + summary: List all users + parameters: + - $ref: '#/components/parameters/TraceSpan' + responses: + '200': + description: A list of users + content: + application/json: + schema: + $ref: '#/components/schemas/Users' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + post: + operationId: PostUsers + tags: + - Users + summary: Create a user + parameters: + - $ref: '#/components/parameters/TraceSpan' + requestBody: + description: User to create + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/User' + responses: + '201': + description: User created + content: + application/json: + schema: + $ref: '#/components/schemas/UserResponse' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + '/users/{userID}': + get: + operationId: GetUsersID + tags: + - Users + summary: Retrieve a user + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: userID + schema: + type: string + required: true + description: The user ID. + responses: + '200': + description: User details + content: + application/json: + schema: + $ref: '#/components/schemas/UserResponse' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + patch: + operationId: PatchUsersID + tags: + - Users + summary: Update a user + requestBody: + description: User update to apply + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/User' + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: userID + schema: + type: string + required: true + description: The ID of the user to update. + responses: + '200': + description: User updated + content: + application/json: + schema: + $ref: '#/components/schemas/UserResponse' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + delete: + operationId: DeleteUsersID + tags: + - Users + summary: Delete a user + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: userID + schema: + type: string + required: true + description: The ID of the user to delete. + responses: + '204': + description: User deleted + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /setup: + get: + operationId: GetSetup + tags: + - Setup + summary: 'Check if database has default user, org, bucket' + description: 'Returns `true` if no default user, organization, or bucket has been created.' + parameters: + - $ref: '#/components/parameters/TraceSpan' + responses: + '200': + description: allowed true or false + content: + application/json: + schema: + $ref: '#/components/schemas/IsOnboarding' + post: + operationId: PostSetup + tags: + - Setup + summary: 'Set up initial user, org and bucket' + description: 'Post an onboarding request to set up initial user, org and bucket.' + parameters: + - $ref: '#/components/parameters/TraceSpan' + requestBody: + description: Source to create + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/OnboardingRequest' + responses: + '201': + description: 'Created default user, bucket, org' + content: + application/json: + schema: + $ref: '#/components/schemas/OnboardingResponse' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /setup/user: + post: + operationId: PostSetupUser + tags: + - Setup + summary: 'Set up a new user, org and bucket' + description: 'Post an onboarding request to set up a new user, org and bucket.' + parameters: + - $ref: '#/components/parameters/TraceSpan' + requestBody: + description: Source to create + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/OnboardingRequest' + responses: + '201': + description: 'Created default user, bucket, org' + content: + application/json: + schema: + $ref: '#/components/schemas/OnboardingResponse' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /authorizations: + get: + operationId: GetAuthorizations + tags: + - Authorizations + summary: List all authorizations + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: query + name: userID + schema: + type: string + description: Only show authorizations that belong to a user ID. + - in: query + name: user + schema: + type: string + description: Only show authorizations that belong to a user name. + - in: query + name: orgID + schema: + type: string + description: Only show authorizations that belong to an organization ID. + - in: query + name: org + schema: + type: string + description: Only show authorizations that belong to a organization name. + responses: + '200': + description: A list of authorizations + content: + application/json: + schema: + $ref: '#/components/schemas/Authorizations' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + post: + operationId: PostAuthorizations + tags: + - Authorizations + summary: Create an authorization + parameters: + - $ref: '#/components/parameters/TraceSpan' + requestBody: + description: Authorization to create + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Authorization' + responses: + '201': + description: Authorization created + content: + application/json: + schema: + $ref: '#/components/schemas/Authorization' + '400': + description: Invalid request + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + '/authorizations/{authID}': + get: + operationId: GetAuthorizationsID + tags: + - Authorizations + summary: Retrieve an authorization + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: authID + schema: + type: string + required: true + description: The ID of the authorization to get. + responses: + '200': + description: Authorization details + content: + application/json: + schema: + $ref: '#/components/schemas/Authorization' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + patch: + operationId: PatchAuthorizationsID + tags: + - Authorizations + summary: Update an authorization to be active or inactive + requestBody: + description: Authorization to update + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/AuthorizationUpdateRequest' + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: authID + schema: + type: string + required: true + description: The ID of the authorization to update. + responses: + '200': + description: The active or inactie authorization + content: + application/json: + schema: + $ref: '#/components/schemas/Authorization' + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + delete: + operationId: DeleteAuthorizationsID + tags: + - Authorizations + summary: Delete an authorization + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: authID + schema: + type: string + required: true + description: The ID of the authorization to delete. + responses: + '204': + description: Authorization deleted + default: + description: Unexpected error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + /variables: + get: + operationId: GetVariables + tags: + - Variables + summary: Get all variables + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: query + name: org + description: The organization name. + schema: + type: string + - in: query + name: orgID + description: The organization ID. + schema: + type: string + responses: + '200': + description: All variables for an organization + content: + application/json: + schema: + $ref: '#/components/schemas/Variables' + '400': + description: Invalid request + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + default: + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + post: + operationId: PostVariables + summary: Create a variable + tags: + - Variables + parameters: + - $ref: '#/components/parameters/TraceSpan' + requestBody: + description: Variable to create + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + responses: + '201': + description: Variable created + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + default: + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + '/variables/{variableID}': + get: + operationId: GetVariablesID + tags: + - Variables + summary: Get a variable + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: variableID + required: true + schema: + type: string + description: The variable ID. + responses: + '200': + description: Variable found + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + '404': + description: Variable not found + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + default: + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + delete: + operationId: DeleteVariablesID + tags: + - Variables + summary: Delete a variable + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: variableID + required: true + schema: + type: string + description: The variable ID. + responses: + '204': + description: Variable deleted + default: + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + patch: + operationId: PatchVariablesID + summary: Update a variable + tags: + - Variables + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: variableID + required: true + schema: + type: string + description: The variable ID. + requestBody: + description: Variable update to apply + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + responses: + '200': + description: Variable updated + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + default: + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + put: + operationId: PutVariablesID + summary: Replace a variable + tags: + - Variables + parameters: + - $ref: '#/components/parameters/TraceSpan' + - in: path + name: variableID + required: true + schema: + type: string + description: The variable ID. + requestBody: + description: Variable to replace + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + responses: + '200': + description: Variable updated + content: + application/json: + schema: + $ref: '#/components/schemas/Variable' + default: + description: Internal server error + content: + application/json: + schema: + $ref: '#/components/schemas/Error' components: parameters: + TraceSpan: + in: header + name: Zap-Trace-Span + description: OpenTracing span context + example: + trace_id: '1' + span_id: '1' + baggage: + key: value + required: false + schema: + type: string Offset: in: query name: offset @@ -6507,27 +6514,14 @@ components: required: false schema: type: string - TraceSpan: - in: header - name: Zap-Trace-Span - description: OpenTracing span context - example: - trace_id: "1" - span_id: "1" - baggage: - key: value - required: false - schema: - type: string After: in: query name: after required: false schema: type: string - description: > - The last resource ID from which to seek from (but not including). - This is to be used instead of `offset`. + description: | + The last resource ID from which to seek from (but not including). This is to be used instead of `offset`. schemas: LanguageRequest: description: Flux query to be analyzed. @@ -6545,7 +6539,7 @@ components: - query properties: extern: - $ref: "#/components/schemas/File" + $ref: '#/components/schemas/File' query: description: Query script to execute. type: string @@ -6555,7 +6549,7 @@ components: enum: - flux dialect: - $ref: "#/components/schemas/Dialect" + $ref: '#/components/schemas/Dialect' now: description: Specifies the time that should be reported as "now" in the query. Default is the server's now time. type: string @@ -6582,7 +6576,7 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' path: description: Package import path type: string @@ -6593,50 +6587,52 @@ components: description: Package files type: array items: - $ref: "#/components/schemas/File" + $ref: '#/components/schemas/File' File: description: Represents a source from a single file type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' name: description: The name of the file. type: string package: - $ref: "#/components/schemas/PackageClause" + $ref: '#/components/schemas/PackageClause' imports: description: A list of package imports type: array items: - $ref: "#/components/schemas/ImportDeclaration" + $ref: '#/components/schemas/ImportDeclaration' body: description: List of Flux statements type: array items: - $ref: "#/components/schemas/Statement" + $ref: '#/components/schemas/Statement' PackageClause: description: Defines a package identifier type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' name: - $ref: "#/components/schemas/Identifier" + $ref: '#/components/schemas/Identifier' ImportDeclaration: description: Declares a package import type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' as: - $ref: "#/components/schemas/Identifier" + $ref: '#/components/schemas/Identifier' path: - $ref: "#/components/schemas/StringLiteral" + $ref: '#/components/schemas/StringLiteral' DeletePredicateRequest: description: The delete predicate request. type: object - required: [start, stop] + required: + - start + - stop properties: start: description: RFC3339Nano @@ -6652,35 +6648,38 @@ components: type: string Node: oneOf: - - $ref: "#/components/schemas/Expression" - - $ref: "#/components/schemas/Block" + - $ref: '#/components/schemas/Expression' + - $ref: '#/components/schemas/Block' + NodeType: + description: Type of AST node + type: string Block: description: A set of statements type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' body: description: Block body type: array items: - $ref: "#/components/schemas/Statement" + $ref: '#/components/schemas/Statement' Statement: oneOf: - - $ref: "#/components/schemas/BadStatement" - - $ref: "#/components/schemas/VariableAssignment" - - $ref: "#/components/schemas/MemberAssignment" - - $ref: "#/components/schemas/ExpressionStatement" - - $ref: "#/components/schemas/ReturnStatement" - - $ref: "#/components/schemas/OptionStatement" - - $ref: "#/components/schemas/BuiltinStatement" - - $ref: "#/components/schemas/TestStatement" + - $ref: '#/components/schemas/BadStatement' + - $ref: '#/components/schemas/VariableAssignment' + - $ref: '#/components/schemas/MemberAssignment' + - $ref: '#/components/schemas/ExpressionStatement' + - $ref: '#/components/schemas/ReturnStatement' + - $ref: '#/components/schemas/OptionStatement' + - $ref: '#/components/schemas/BuiltinStatement' + - $ref: '#/components/schemas/TestStatement' BadStatement: description: A placeholder for statements for which no correct statement nodes can be created type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' text: description: Raw source text type: string @@ -6689,247 +6688,247 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' id: - $ref: "#/components/schemas/Identifier" + $ref: '#/components/schemas/Identifier' init: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' MemberAssignment: description: Object property assignment type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' member: - $ref: "#/components/schemas/MemberExpression" + $ref: '#/components/schemas/MemberExpression' init: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' ExpressionStatement: description: May consist of an expression that does not return a value and is executed solely for its side-effects type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' expression: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' ReturnStatement: description: Defines an expression to return type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' argument: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' OptionStatement: description: A single variable declaration type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' assignment: oneOf: - - $ref: "#/components/schemas/VariableAssignment" - - $ref: "#/components/schemas/MemberAssignment" + - $ref: '#/components/schemas/VariableAssignment' + - $ref: '#/components/schemas/MemberAssignment' BuiltinStatement: description: Declares a builtin identifier and its type type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' id: - $ref: "#/components/schemas/Identifier" + $ref: '#/components/schemas/Identifier' TestStatement: description: Declares a Flux test case type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' assignment: - $ref: "#/components/schemas/VariableAssignment" + $ref: '#/components/schemas/VariableAssignment' 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" + - $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' ArrayExpression: description: Used to create and directly specify the elements of an array object type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' elements: description: Elements of the array type: array items: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' DictExpression: description: Used to create and directly specify the elements of a dictionary type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' elements: description: Elements of the dictionary type: array items: - $ref: "#/components/schemas/DictItem" + $ref: '#/components/schemas/DictItem' DictItem: description: A key/value pair in a dictionary type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' key: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' val: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' FunctionExpression: description: Function expression type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' params: description: Function parameters type: array items: - $ref: "#/components/schemas/Property" + $ref: '#/components/schemas/Property' body: - $ref: "#/components/schemas/Node" + $ref: '#/components/schemas/Node' BinaryExpression: description: uses binary operators to act on two operands in an expression type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' operator: type: string left: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' right: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' CallExpression: description: Represents a function call type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' callee: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' arguments: description: Function arguments type: array items: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' ConditionalExpression: - description: Selects one of two expressions, `Alternate` or `Consequent`, depending on a third boolean expression, `Test` + description: 'Selects one of two expressions, `Alternate` or `Consequent`, depending on a third boolean expression, `Test`' type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' test: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' alternate: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' consequent: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' LogicalExpression: description: Represents the rule conditions that collectively evaluate to either true or false type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' operator: type: string left: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' right: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' MemberExpression: description: Represents accessing a property of an object type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' object: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' property: - $ref: "#/components/schemas/PropertyKey" + $ref: '#/components/schemas/PropertyKey' IndexExpression: description: Represents indexing into an array type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' array: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' index: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' ObjectExpression: description: Allows the declaration of an anonymous object within a declaration type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' properties: description: Object properties type: array items: - $ref: "#/components/schemas/Property" + $ref: '#/components/schemas/Property' ParenExpression: description: Represents an expression wrapped in parenthesis type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' expression: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' PipeExpression: description: Call expression with pipe argument type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' argument: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' call: - $ref: "#/components/schemas/CallExpression" + $ref: '#/components/schemas/CallExpression' UnaryExpression: description: Uses operators to act on a single operand in an expression type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' operator: type: string argument: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' BooleanLiteral: description: Represents boolean values type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: boolean DateTimeLiteral: @@ -6937,7 +6936,7 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: string DurationLiteral: @@ -6945,18 +6944,18 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' values: description: Duration values type: array items: - $ref: "#/components/schemas/Duration" + $ref: '#/components/schemas/Duration' FloatLiteral: description: Represents floating point numbers according to the double representations defined by the IEEE-754-1985 type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: number IntegerLiteral: @@ -6964,21 +6963,21 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: string PipeLiteral: - description: Represents a specialized literal value, indicating the left hand value of a pipe expression + description: 'Represents a specialized literal value, indicating the left hand value of a pipe expression' type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' RegexpLiteral: description: Expressions begin and end with `/` and are regular expressions with syntax accepted by RE2 type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: string StringLiteral: @@ -6986,7 +6985,7 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: string UnsignedIntegerLiteral: @@ -6994,7 +6993,7 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' value: type: string Duration: @@ -7002,7 +7001,7 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' magnitude: type: integer unit: @@ -7012,114 +7011,60 @@ components: type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' key: - $ref: "#/components/schemas/PropertyKey" + $ref: '#/components/schemas/PropertyKey' value: - $ref: "#/components/schemas/Expression" + $ref: '#/components/schemas/Expression' PropertyKey: oneOf: - - $ref: "#/components/schemas/Identifier" - - $ref: "#/components/schemas/StringLiteral" + - $ref: '#/components/schemas/Identifier' + - $ref: '#/components/schemas/StringLiteral' Identifier: description: A valid Flux identifier type: object properties: type: - $ref: "#/components/schemas/NodeType" + $ref: '#/components/schemas/NodeType' name: type: string - NodeType: - description: Type of AST node - type: string Dialect: - description: Dialect are options to change the default CSV output format; https://www.w3.org/TR/2015/REC-tabular-metadata-20151217/#dialect-descriptions + description: 'Dialect are options to change the default CSV output format; https://www.w3.org/TR/2015/REC-tabular-metadata-20151217/#dialect-descriptions' type: object properties: header: - description: If true, the results will contain a header row + description: 'If true, the results will contain a header row' type: boolean default: true delimiter: - description: Separator between cells; the default is , + description: 'Separator between cells; the default is ,' type: string - default: "," + default: ',' maxLength: 1 minLength: 1 annotations: - description: https://www.w3.org/TR/2015/REC-tabular-data-model-20151217/#columns + description: 'https://www.w3.org/TR/2015/REC-tabular-data-model-20151217/#columns' type: array uniqueItems: true items: type: string enum: - - "group" - - "datatype" - - "default" + - group + - datatype + - default commentPrefix: description: Character prefixed to comment strings type: string - default: "#" + default: '#' maxLength: 1 minLength: 0 dateTimeFormat: description: Format of timestamps type: string - default: "RFC3339" + default: RFC3339 enum: - RFC3339 - RFC3339Nano - Permission: - required: [action, resource] - properties: - action: - type: string - enum: - - read - - write - resource: - $ref: "#/components/schemas/Resource" - Resource: - type: object - required: [type] - properties: - type: - type: string - enum: - - authorizations - - buckets - - dashboards - - orgs - - sources - - tasks - - telegrafs - - users - - variables - - scrapers - - secrets - - labels - - views - - documents - - notificationRules - - notificationEndpoints - - checks - - dbrp - id: - type: string - nullable: true - description: If ID is set that is a permission for a specific resource. if it is not set it is a permission for all resources of that resource type. - name: - type: string - nullable: true - description: Optional name of the resource if the resource has a name field. - orgID: - type: string - nullable: true - description: If orgID is set that is a permission for all resources owned my that org. if it is not set it is a permission for all resources of that resource type. - org: - type: string - nullable: true - description: Optional name of the organization of the organization with orgID. AuthorizationUpdateRequest: properties: status: @@ -7132,71 +7077,6 @@ components: description: type: string description: A description of the token. - Authorization: - required: [orgID, permissions] - allOf: - - $ref: "#/components/schemas/AuthorizationUpdateRequest" - - type: object - properties: - createdAt: - type: string - format: date-time - readOnly: true - updatedAt: - type: string - format: date-time - readOnly: true - orgID: - type: string - description: ID of org that authorization is scoped to. - permissions: - type: array - minItems: 1 - description: List of permissions for an auth. An auth must have at least one Permission. - items: - $ref: "#/components/schemas/Permission" - id: - readOnly: true - type: string - token: - readOnly: true - type: string - description: Passed via the Authorization Header and Token Authentication type. - userID: - readOnly: true - type: string - description: ID of user that created and owns the token. - user: - readOnly: true - type: string - description: Name of user that created and owns the token. - org: - readOnly: true - type: string - description: Name of the org token is scoped to. - links: - type: object - readOnly: true - example: - self: "/api/v2/authorizations/1" - user: "/api/v2/users/12" - properties: - self: - readOnly: true - $ref: "#/components/schemas/Link" - user: - readOnly: true - $ref: "#/components/schemas/Link" - Authorizations: - type: object - properties: - links: - readOnly: true - $ref: "#/components/schemas/Links" - authorizations: - type: array - items: - $ref: "#/components/schemas/Authorization" PostBucketRequest: properties: orgID: @@ -7208,39 +7088,42 @@ components: rp: type: string retentionRules: - $ref: "#/components/schemas/RetentionRules" - required: [orgID, name, retentionRules] + $ref: '#/components/schemas/RetentionRules' + required: + - orgID + - name + - retentionRules Bucket: properties: links: type: object readOnly: true 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&bucket=1" + 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&bucket=1 properties: labels: description: URL to retrieve labels for this bucket - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: description: URL to retrieve members that can read this bucket - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' org: description: URL to retrieve parent organization for this bucket - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: description: URL to retrieve owners that can read and write to this bucket. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' self: description: URL for this bucket - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' write: description: URL to write line protocol for this bucket - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' id: readOnly: true type: string @@ -7268,25 +7151,27 @@ components: format: date-time readOnly: true retentionRules: - $ref: "#/components/schemas/RetentionRules" + $ref: '#/components/schemas/RetentionRules' labels: - $ref: "#/components/schemas/Labels" - required: [name, retentionRules] + $ref: '#/components/schemas/Labels' + required: + - name + - retentionRules Buckets: type: object properties: links: readOnly: true - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' buckets: type: array items: - $ref: "#/components/schemas/Bucket" + $ref: '#/components/schemas/Bucket' RetentionRules: type: array description: Rules to expire or retain data. No rules means data never expires. items: - $ref: "#/components/schemas/RetentionRule" + $ref: '#/components/schemas/RetentionRule' RetentionRule: type: object properties: @@ -7297,10 +7182,17 @@ components: - expire everySeconds: type: integer - description: Duration in seconds for how long data will be kept in the database. + format: int64 + description: Duration in seconds for how long data will be kept in the database. 0 means infinite. example: 86400 - minimum: 1 - required: [type, everySeconds] + minimum: 0 + shardGroupDurationSeconds: + type: integer + format: int64 + description: Shard duration measured in seconds. + required: + - type + - everySeconds Link: type: string format: uri @@ -7310,12 +7202,13 @@ components: type: object properties: next: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' prev: - $ref: "#/components/schemas/Link" - required: [self] + $ref: '#/components/schemas/Link' + required: + - self Logs: type: object properties: @@ -7323,13 +7216,13 @@ components: readOnly: true type: array items: - $ref: "#/components/schemas/LogEvent" + $ref: '#/components/schemas/LogEvent' LogEvent: type: object properties: time: readOnly: true - description: Time event occurred, RFC3339Nano. + description: 'Time event occurred, RFC3339Nano.' type: string format: date-time message: @@ -7343,31 +7236,31 @@ components: type: object readOnly: true example: - self: "/api/v2/orgs/1" - members: "/api/v2/orgs/1/members" - owners: "/api/v2/orgs/1/owners" - labels: "/api/v2/orgs/1/labels" - secrets: "/api/v2/orgs/1/secrets" - buckets: "/api/v2/buckets?org=myorg" - tasks: "/api/v2/tasks?org=myorg" - dashboards: "/api/v2/dashboards?org=myorg" + self: /api/v2/orgs/1 + members: /api/v2/orgs/1/members + owners: /api/v2/orgs/1/owners + labels: /api/v2/orgs/1/labels + secrets: /api/v2/orgs/1/secrets + buckets: /api/v2/buckets?org=myorg + tasks: /api/v2/tasks?org=myorg + dashboards: /api/v2/dashboards?org=myorg properties: self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' secrets: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' buckets: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' tasks: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' dashboards: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' id: readOnly: true type: string @@ -7390,16 +7283,17 @@ components: enum: - active - inactive - required: [name] + required: + - name Organizations: type: object properties: links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' orgs: type: array items: - $ref: "#/components/schemas/Organization" + $ref: '#/components/schemas/Organization' TemplateApply: type: object properties: @@ -7419,7 +7313,7 @@ components: items: type: string contents: - $ref: "#/components/schemas/Template" + $ref: '#/components/schemas/Template' templates: type: array items: @@ -7432,7 +7326,7 @@ components: items: type: string contents: - $ref: "#/components/schemas/Template" + $ref: '#/components/schemas/Template' envRefs: type: object additionalProperties: @@ -7454,7 +7348,8 @@ components: type: string contentType: type: string - required: ["url"] + required: + - url actions: type: array items: @@ -7463,26 +7358,31 @@ components: properties: action: type: string - enum: ["skipKind"] + enum: + - skipKind properties: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" - required: ["kind"] + $ref: '#/components/schemas/TemplateKind' + required: + - kind - type: object properties: action: type: string - enum: ["skipResource"] + enum: + - skipResource properties: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' resourceTemplateName: type: string - required: ["kind", "resourceTemplateName"] + required: + - kind + - resourceTemplateName TemplateKind: type: string enum: @@ -7522,18 +7422,20 @@ components: byResourceKind: type: array items: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' resources: type: object properties: id: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' name: type: string - description: "if defined with id, name is used for resource exported by id. if defined independently, resources strictly matching name are exported" - required: [id, kind] + description: 'if defined with id, name is used for resource exported by id. if defined independently, resources strictly matching name are exported' + required: + - id + - kind TemplateExportByName: type: object properties: @@ -7556,15 +7458,17 @@ components: byResourceKind: type: array items: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' resources: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' name: type: string - required: [name, kind] + required: + - name + - kind Template: type: array items: @@ -7573,7 +7477,7 @@ components: apiVersion: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' meta: type: object properties: @@ -7608,7 +7512,9 @@ components: - type: integer - type: number - type: boolean - required: [resourceField, envRefKey] + required: + - resourceField + - envRefKey TemplateSummary: type: object properties: @@ -7631,7 +7537,7 @@ components: orgID: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string name: @@ -7643,57 +7549,57 @@ components: labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' checks: type: array items: allOf: - - $ref: "#/components/schemas/CheckDiscriminator" + - $ref: '#/components/schemas/CheckDiscriminator' - type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' dashboards: type: array items: type: object properties: id: - type: "string" + type: string orgID: - type: "string" + type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string name: - type: "string" + type: string description: - type: "string" + type: string labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' charts: type: array items: - $ref: "#/components/schemas/TemplateChart" + $ref: '#/components/schemas/TemplateChart' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' labels: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' labelMappings: type: array items: @@ -7727,26 +7633,26 @@ components: type: array items: allOf: - - $ref: "#/components/schemas/NotificationEndpointDiscrimator" + - $ref: '#/components/schemas/NotificationEndpointDiscrimator' - type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' notificationRules: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string name: @@ -7790,16 +7696,16 @@ components: labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' tasks: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string id: @@ -7819,31 +7725,31 @@ components: status: type: string envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' telegrafConfigs: type: array items: allOf: - - $ref: "#/components/schemas/TelegrafRequest" + - $ref: '#/components/schemas/TelegrafRequest' - type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' variables: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string id: @@ -7855,13 +7761,13 @@ components: description: type: string arguments: - $ref: "#/components/schemas/VariableProperties" + $ref: '#/components/schemas/VariableProperties' labelAssociations: type: array items: - $ref: "#/components/schemas/TemplateSummaryLabel" + $ref: '#/components/schemas/TemplateSummaryLabel' envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' diff: type: object properties: @@ -7871,7 +7777,7 @@ components: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -7886,7 +7792,7 @@ components: description: type: string retentionRules: - $ref: "#/components/schemas/RetentionRules" + $ref: '#/components/schemas/RetentionRules' old: type: object properties: @@ -7895,14 +7801,14 @@ components: description: type: string retentionRules: - $ref: "#/components/schemas/RetentionRules" + $ref: '#/components/schemas/RetentionRules' checks: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -7910,9 +7816,9 @@ components: templateMetaName: type: string new: - $ref: "#/components/schemas/CheckDiscriminator" + $ref: '#/components/schemas/CheckDiscriminator' old: - $ref: "#/components/schemas/CheckDiscriminator" + $ref: '#/components/schemas/CheckDiscriminator' dashboards: type: array items: @@ -7923,7 +7829,7 @@ components: id: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string new: @@ -7936,7 +7842,7 @@ components: charts: type: array items: - $ref: "#/components/schemas/TemplateChart" + $ref: '#/components/schemas/TemplateChart' old: type: object properties: @@ -7947,7 +7853,7 @@ components: charts: type: array items: - $ref: "#/components/schemas/TemplateChart" + $ref: '#/components/schemas/TemplateChart' labels: type: array items: @@ -7956,7 +7862,7 @@ components: stateStatus: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' id: type: string templateMetaName: @@ -8006,7 +7912,7 @@ components: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -8014,16 +7920,16 @@ components: templateMetaName: type: string new: - $ref: "#/components/schemas/NotificationEndpointDiscrimator" + $ref: '#/components/schemas/NotificationEndpointDiscrimator' old: - $ref: "#/components/schemas/NotificationEndpointDiscrimator" + $ref: '#/components/schemas/NotificationEndpointDiscrimator' notificationRules: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -8118,7 +8024,7 @@ components: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -8165,7 +8071,7 @@ components: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -8173,16 +8079,16 @@ components: templateMetaName: type: string new: - $ref: "#/components/schemas/TelegrafRequest" + $ref: '#/components/schemas/TelegrafRequest' old: - $ref: "#/components/schemas/TelegrafRequest" + $ref: '#/components/schemas/TelegrafRequest' variables: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' stateStatus: type: string id: @@ -8197,7 +8103,7 @@ components: description: type: string args: - $ref: "#/components/schemas/VariableProperties" + $ref: '#/components/schemas/VariableProperties' old: type: object properties: @@ -8206,14 +8112,14 @@ components: description: type: string args: - $ref: "#/components/schemas/VariableProperties" + $ref: '#/components/schemas/VariableProperties' errors: type: array items: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' reason: type: string fields: @@ -8232,7 +8138,7 @@ components: orgID: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string name: @@ -8245,7 +8151,7 @@ components: description: type: string envReferences: - $ref: "#/components/schemas/TemplateEnvReferences" + $ref: '#/components/schemas/TemplateEnvReferences' TemplateChart: type: object properties: @@ -8257,8 +8163,8 @@ components: type: integer width: type: integer - properties: # field name is properties - $ref: "#/components/schemas/ViewProperties" + properties: + $ref: '#/components/schemas/ViewProperties' Stack: type: object properties: @@ -8295,7 +8201,7 @@ components: resourceID: type: string kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' templateMetaName: type: string associations: @@ -8304,7 +8210,7 @@ components: type: object properties: kind: - $ref: "#/components/schemas/TemplateKind" + $ref: '#/components/schemas/TemplateKind' metaName: type: string links: @@ -8324,11 +8230,11 @@ components: type: object properties: links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' runs: type: array items: - $ref: "#/components/schemas/Run" + $ref: '#/components/schemas/Run' Run: properties: id: @@ -8347,7 +8253,7 @@ components: - success - canceled scheduledFor: - description: Time used for run's "now" option, RFC3339. + description: 'Time used for run''s "now" option, RFC3339.' type: string format: date-time log: @@ -8365,26 +8271,26 @@ components: type: string startedAt: readOnly: true - description: Time run started executing, RFC3339Nano. + description: 'Time run started executing, RFC3339Nano.' type: string format: date-time finishedAt: readOnly: true - description: Time run finished executing, RFC3339Nano. + description: 'Time run finished executing, RFC3339Nano.' type: string format: date-time requestedAt: readOnly: true - description: Time run was manually requested, RFC3339Nano. + description: 'Time run was manually requested, RFC3339Nano.' type: string format: date-time links: type: object readOnly: true example: - self: "/api/v2/tasks/1/runs/1" - task: "/api/v2/tasks/1" - retry: "/api/v2/tasks/1/runs/1/retry" + self: /api/v2/tasks/1/runs/1 + task: /api/v2/tasks/1 + retry: /api/v2/tasks/1/runs/1/retry properties: self: type: string @@ -8399,7 +8305,7 @@ components: properties: scheduledFor: nullable: true - description: Time used for run's "now" option, RFC3339. Default is the server's now time. + description: 'Time used for run''s "now" option, RFC3339. Default is the server''s now time.' type: string format: date-time Tasks: @@ -8407,11 +8313,11 @@ components: properties: links: readOnly: true - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' tasks: type: array items: - $ref: "#/components/schemas/Task" + $ref: '#/components/schemas/Task' Task: type: object properties: @@ -8419,7 +8325,7 @@ components: readOnly: true type: string type: - description: The type of task, this can be used for filtering tasks on list actions. + description: 'The type of task, this can be used for filtering tasks on list actions.' type: string orgID: description: The ID of the organization that owns this Task. @@ -8434,9 +8340,9 @@ components: description: An optional description of the task. type: string status: - $ref: "#/components/schemas/TaskStatusType" + $ref: '#/components/schemas/TaskStatusType' labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' authorizationID: description: The ID of the authorization used when this task communicates with the query engine. type: string @@ -8450,10 +8356,10 @@ components: description: A task repetition schedule in the form '* * * * * *'; parsed from Flux. type: string offset: - description: Duration to delay after the schedule, before executing the task; parsed from flux, if set to zero it will remove this option and use 0 as the default. + description: 'Duration to delay after the schedule, before executing the task; parsed from flux, if set to zero it will remove this option and use 0 as the default.' type: string latestCompleted: - description: Timestamp of latest scheduled, completed run, RFC3339. + description: 'Timestamp of latest scheduled, completed run, RFC3339.' type: string format: date-time readOnly: true @@ -8479,30 +8385,36 @@ components: type: object readOnly: true example: - self: "/api/v2/tasks/1" - owners: "/api/v2/tasks/1/owners" - members: "/api/v2/tasks/1/members" - labels: "/api/v2/tasks/1/labels" - runs: "/api/v2/tasks/1/runs" - logs: "/api/v2/tasks/1/logs" + self: /api/v2/tasks/1 + owners: /api/v2/tasks/1/owners + members: /api/v2/tasks/1/members + labels: /api/v2/tasks/1/labels + runs: /api/v2/tasks/1/runs + logs: /api/v2/tasks/1/logs properties: self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' runs: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' logs: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: - $ref: "#/components/schemas/Link" - required: [id, name, orgID, flux] + $ref: '#/components/schemas/Link' + required: + - id + - name + - orgID + - flux TaskStatusType: type: string - enum: [active, inactive] - User: + enum: + - active + - inactive + UserResponse: properties: id: readOnly: true @@ -8522,31 +8434,19 @@ components: type: object readOnly: true example: - self: "/api/v2/users/1" + self: /api/v2/users/1 properties: self: type: string format: uri - required: [name] - Users: - type: object - properties: - links: - type: object - properties: - self: - type: string - format: uri - users: - type: array - items: - $ref: "#/components/schemas/User" + required: + - name Flags: type: object additionalProperties: true ResourceMember: allOf: - - $ref: "#/components/schemas/User" + - $ref: '#/components/schemas/UserResponse' - type: object properties: role: @@ -8566,10 +8466,10 @@ components: users: type: array items: - $ref: "#/components/schemas/ResourceMember" + $ref: '#/components/schemas/ResourceMember' ResourceOwner: allOf: - - $ref: "#/components/schemas/User" + - $ref: '#/components/schemas/UserResponse' - type: object properties: role: @@ -8589,14 +8489,14 @@ components: users: type: array items: - $ref: "#/components/schemas/ResourceOwner" + $ref: '#/components/schemas/ResourceOwner' FluxSuggestions: type: object properties: funcs: type: array items: - $ref: "#/components/schemas/FluxSuggestion" + $ref: '#/components/schemas/FluxSuggestion' FluxSuggestion: type: object properties: @@ -8689,10 +8589,9 @@ components: Error: properties: code: - description: Code is the machine-readable error code. + description: code is the machine-readable error code. readOnly: true type: string - # This set of enumerations must remain in sync with the constants defined in errors.go enum: - internal error - not found @@ -8705,11 +8604,22 @@ components: - too many requests - unauthorized - method not allowed + - request too large message: readOnly: true - description: Message is a human-readable message. + description: message is a human-readable message. type: string - required: [code, message] + op: + readOnly: true + description: op describes the logical code operation during error. Useful for debugging. + type: string + err: + readOnly: true + description: err is a stack of errors that occurred during processing of the request. Useful for debugging. + type: string + required: + - code + - message LineProtocolError: properties: code: @@ -8740,7 +8650,11 @@ components: description: First line within sent body containing malformed data type: integer format: int32 - required: [code, message, op, err] + required: + - code + - message + - op + - err LineProtocolLengthError: properties: code: @@ -8758,18 +8672,18 @@ components: description: Max length in bytes for a body of line-protocol. type: integer format: int32 - required: [code, message, maxLength] + required: + - code + - message + - maxLength Field: type: object properties: value: - description: >- - value is the value of the field. Meaning of the value is implied by - the `type` key + description: value is the value of the field. Meaning of the value is implied by the `type` key type: string type: - description: >- - `type` describes the field type. `func` is a function. `field` is a field reference. + description: '`type` describes the field type. `func` is a function. `field` is a field reference.' type: string enum: - func @@ -8779,15 +8693,13 @@ components: - regex - wildcard alias: - description: >- - Alias overrides the field name in the returned response. Applies only - if type is `func` + description: Alias overrides the field name in the returned response. Applies only if type is `func` type: string args: description: Args are the arguments to the function type: array items: - $ref: "#/components/schemas/Field" + $ref: '#/components/schemas/Field' BuilderConfig: type: object properties: @@ -8798,11 +8710,11 @@ components: tags: type: array items: - $ref: "#/components/schemas/BuilderTagsType" + $ref: '#/components/schemas/BuilderTagsType' functions: type: array items: - $ref: "#/components/schemas/BuilderFunctionsType" + $ref: '#/components/schemas/BuilderFunctionsType' aggregateWindow: type: object properties: @@ -8820,10 +8732,12 @@ components: items: type: string aggregateFunctionType: - $ref: "#/components/schemas/BuilderAggregateFunctionType" + $ref: '#/components/schemas/BuilderAggregateFunctionType' BuilderAggregateFunctionType: type: string - enum: ["filter", "group"] + enum: + - filter + - group BuilderFunctionsType: type: object properties: @@ -8836,14 +8750,16 @@ components: type: string description: The text of the Flux query. editMode: - $ref: "#/components/schemas/QueryEditMode" + $ref: '#/components/schemas/QueryEditMode' name: type: string builderConfig: - $ref: "#/components/schemas/BuilderConfig" + $ref: '#/components/schemas/BuilderConfig' QueryEditMode: type: string - enum: ["builder", "advanced"] + enum: + - builder + - advanced Axis: type: object description: The description of a particular axis for a visualization. @@ -8852,9 +8768,7 @@ components: type: array minItems: 0 maxItems: 2 - description: >- - The extents of an axis in the form [lower, upper]. Clients determine - whether bounds are to be inclusive or exclusive of their limits + description: 'The extents of an axis in the form [lower, upper]. Clients determine whether bounds are to be inclusive or exclusive of their limits' items: type: string label: @@ -8869,17 +8783,27 @@ components: base: description: Base represents the radix for formatting axis values. type: string - enum: ["", "2", "10"] + enum: + - '' + - '2' + - '10' scale: - $ref: "#/components/schemas/AxisScale" + $ref: '#/components/schemas/AxisScale' AxisScale: description: 'Scale is the axis formatting scale. Supported: "log", "linear"' type: string - enum: ["log", "linear"] + enum: + - log + - linear DashboardColor: type: object description: Defines an encoding of data value into color space. - required: [id, type, hex, name, value] + required: + - id + - type + - hex + - name + - value properties: id: description: The unique ID of the view color. @@ -8929,7 +8853,6 @@ components: - shape - axes - colors - - legend - note - showNoteWhenEmpty - position @@ -8938,28 +8861,32 @@ components: type: string type: type: string - enum: [xy] + enum: + - xy queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean axes: - $ref: "#/components/schemas/Axes" + $ref: '#/components/schemas/Axes' + staticLegend: + $ref: '#/components/schemas/StaticLegend' legend: - $ref: "#/components/schemas/Legend" + $ref: '#/components/schemas/Legend' xColumn: type: string generateXAxisTicks: @@ -8992,12 +8919,18 @@ components: type: boolean hoverDimension: type: string - enum: [auto, x, y, xy] + enum: + - auto + - x + - 'y' + - xy position: type: string - enum: [overlaid, stacked] + enum: + - overlaid + - stacked geom: - $ref: "#/components/schemas/XYGeom" + $ref: '#/components/schemas/XYGeom' legendColorizeRows: type: boolean legendOpacity: @@ -9007,7 +8940,12 @@ components: type: integer XYGeom: type: string - enum: [line, step, stacked, bar, monotoneX] + enum: + - line + - step + - stacked + - bar + - monotoneX BandViewProperties: type: object required: @@ -9017,7 +8955,6 @@ components: - shape - axes - colors - - legend - note - showNoteWhenEmpty properties: @@ -9025,28 +8962,32 @@ components: type: string type: type: string - enum: [band] + enum: + - band queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean axes: - $ref: "#/components/schemas/Axes" + $ref: '#/components/schemas/Axes' legend: - $ref: "#/components/schemas/Legend" + $ref: '#/components/schemas/Legend' + staticLegend: + $ref: '#/components/schemas/StaticLegend' xColumn: type: string generateXAxisTicks: @@ -9083,9 +9024,13 @@ components: type: string hoverDimension: type: string - enum: [auto, x, y, xy] + enum: + - auto + - x + - 'y' + - xy geom: - $ref: "#/components/schemas/XYGeom" + $ref: '#/components/schemas/XYGeom' legendColorizeRows: type: boolean legendOpacity: @@ -9101,7 +9046,6 @@ components: - shape - axes - colors - - legend - note - showNoteWhenEmpty - prefix @@ -9113,28 +9057,32 @@ components: type: string type: type: string - enum: [line-plus-single-stat] + enum: + - line-plus-single-stat queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean axes: - $ref: "#/components/schemas/Axes" + $ref: '#/components/schemas/Axes' + staticLegend: + $ref: '#/components/schemas/StaticLegend' legend: - $ref: "#/components/schemas/Legend" + $ref: '#/components/schemas/Legend' xColumn: type: string generateXAxisTicks: @@ -9167,16 +9115,22 @@ components: type: boolean hoverDimension: type: string - enum: [auto, x, y, xy] + enum: + - auto + - x + - 'y' + - xy position: type: string - enum: [overlaid, stacked] + enum: + - overlaid + - stacked prefix: type: string suffix: type: string decimalPlaces: - $ref: "#/components/schemas/DecimalPlaces" + $ref: '#/components/schemas/DecimalPlaces' legendColorizeRows: type: boolean legendOpacity: @@ -9209,11 +9163,12 @@ components: type: string type: type: string - enum: [mosaic] + enum: + - mosaic queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array @@ -9221,11 +9176,12 @@ components: type: string shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean xColumn: type: string @@ -9241,6 +9197,12 @@ components: xTickStep: type: number format: float + yLabelColumnSeparator: + type: string + yLabelColumns: + type: array + items: + type: string ySeriesColumns: type: array items: @@ -9271,6 +9233,13 @@ components: type: string ySuffix: type: string + hoverDimension: + type: string + enum: + - auto + - x + - 'y' + - xy legendColorizeRows: type: boolean legendOpacity: @@ -9304,11 +9273,12 @@ components: type: string type: type: string - enum: [scatter] + enum: + - scatter queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array @@ -9316,11 +9286,12 @@ components: type: string shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean xColumn: type: string @@ -9412,11 +9383,12 @@ components: type: string type: type: string - enum: [heatmap] + enum: + - heatmap queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array @@ -9424,11 +9396,12 @@ components: type: string shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean xColumn: type: string @@ -9502,28 +9475,29 @@ components: - tickPrefix - suffix - tickSuffix - - legend - decimalPlaces properties: type: type: string - enum: [single-stat] + enum: + - single-stat queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean prefix: type: string @@ -9533,10 +9507,12 @@ components: type: string tickSuffix: type: string + staticLegend: + $ref: '#/components/schemas/StaticLegend' legend: - $ref: "#/components/schemas/Legend" + $ref: '#/components/schemas/Legend' decimalPlaces: - $ref: "#/components/schemas/DecimalPlaces" + $ref: '#/components/schemas/DecimalPlaces' HistogramViewProperties: type: object required: @@ -9555,23 +9531,25 @@ components: properties: type: type: string - enum: [histogram] + enum: + - histogram queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean xColumn: type: string @@ -9588,7 +9566,9 @@ components: type: string position: type: string - enum: [overlaid, stacked] + enum: + - overlaid + - stacked binCount: type: integer legendColorizeRows: @@ -9601,40 +9581,39 @@ components: GaugeViewProperties: type: object required: - [ - type, - queries, - colors, - shape, - note, - showNoteWhenEmpty, - prefix, - tickPrefix, - suffix, - tickSuffix, - legend, - decimalPlaces, - ] + - type + - queries + - colors + - shape + - note + - showNoteWhenEmpty + - prefix + - tickPrefix + - suffix + - tickSuffix + - decimalPlaces properties: type: type: string - enum: [gauge] + enum: + - gauge queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean prefix: type: string @@ -9644,10 +9623,12 @@ components: type: string tickSuffix: type: string + staticLegend: + $ref: '#/components/schemas/StaticLegend' legend: - $ref: "#/components/schemas/Legend" + $ref: '#/components/schemas/Legend' decimalPlaces: - $ref: "#/components/schemas/DecimalPlaces" + $ref: '#/components/schemas/DecimalPlaces' TableViewProperties: type: object required: @@ -9664,33 +9645,33 @@ components: properties: type: type: string - enum: [table] + enum: + - table queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string showNoteWhenEmpty: - description: If true, will display note when empty + description: 'If true, will display note when empty' type: boolean tableOptions: properties: verticalTimeAxis: - description: >- - verticalTimeAxis describes the orientation of the table by - indicating whether the time axis will be displayed vertically + description: verticalTimeAxis describes the orientation of the table by indicating whether the time axis will be displayed vertically type: boolean sortBy: - $ref: "#/components/schemas/RenamableField" + $ref: '#/components/schemas/RenamableField' wrapping: description: Wrapping describes the text wrapping style to be used in table views type: string @@ -9699,24 +9680,18 @@ components: - wrap - single-line fixFirstColumn: - description: >- - fixFirstColumn indicates whether the first column of the table - should be locked + description: fixFirstColumn indicates whether the first column of the table should be locked type: boolean fieldOptions: - description: >- - fieldOptions represent the fields retrieved by the query with - customization options + description: fieldOptions represent the fields retrieved by the query with customization options type: array items: - $ref: "#/components/schemas/RenamableField" + $ref: '#/components/schemas/RenamableField' timeFormat: - description: >- - timeFormat describes the display format for time values according to - moment.js date formatting + description: timeFormat describes the display format for time values according to moment.js date formatting type: string decimalPlaces: - $ref: "#/components/schemas/DecimalPlaces" + $ref: '#/components/schemas/DecimalPlaces' MarkdownViewProperties: type: object required: @@ -9726,10 +9701,12 @@ components: properties: type: type: string - enum: [markdown] + enum: + - markdown shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 note: type: string CheckViewProperties: @@ -9743,23 +9720,25 @@ components: properties: type: type: string - enum: [check] + enum: + - check shape: type: string - enum: ["chronograf-v2"] + enum: + - chronograf-v2 checkID: type: string check: - $ref: "#/components/schemas/Check" + $ref: '#/components/schemas/Check' queries: type: array items: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' colors: description: Colors define color encoding of data into a visualization type: array items: - $ref: "#/components/schemas/DashboardColor" + $ref: '#/components/schemas/DashboardColor' legendColorizeRows: type: boolean legendOpacity: @@ -9767,18 +9746,237 @@ components: format: float legendOrientationThreshold: type: integer + GeoViewLayer: + type: object + oneOf: + - $ref: '#/components/schemas/GeoCircleViewLayer' + - $ref: '#/components/schemas/GeoHeatMapViewLayer' + - $ref: '#/components/schemas/GeoPointMapViewLayer' + - $ref: '#/components/schemas/GeoTrackMapViewLayer' + GeoViewLayerProperties: + type: object + required: + - type + properties: + type: + type: string + enum: + - heatmap + - circleMap + - pointMap + - trackMap + GeoCircleViewLayer: + allOf: + - $ref: '#/components/schemas/GeoViewLayerProperties' + - type: object + required: + - radiusField + - radiusDimension + - colorField + - colorDimension + - colors + properties: + radiusField: + type: string + description: Radius field + radiusDimension: + $ref: '#/components/schemas/Axis' + colorField: + type: string + description: Circle color field + colorDimension: + $ref: '#/components/schemas/Axis' + colors: + description: Colors define color encoding of data into a visualization + type: array + items: + $ref: '#/components/schemas/DashboardColor' + radius: + description: Maximum radius size in pixels + type: integer + interpolateColors: + description: Interpolate circle color based on displayed value + type: boolean + GeoPointMapViewLayer: + allOf: + - $ref: '#/components/schemas/GeoViewLayerProperties' + - type: object + required: + - colorField + - colorDimension + - colors + properties: + colorField: + type: string + description: Marker color field + colorDimension: + $ref: '#/components/schemas/Axis' + colors: + description: Colors define color encoding of data into a visualization + type: array + items: + $ref: '#/components/schemas/DashboardColor' + isClustered: + description: Cluster close markers together + type: boolean + GeoTrackMapViewLayer: + allOf: + - $ref: '#/components/schemas/GeoViewLayerProperties' + - type: object + required: + - trackWidth + - speed + - randomColors + - trackPointVisualization + properties: + trackWidth: + description: Width of the track + type: integer + speed: + description: Speed of the track animation + type: integer + randomColors: + description: Assign different colors to different tracks + type: boolean + colors: + description: Colors define color encoding of data into a visualization + type: array + items: + $ref: '#/components/schemas/DashboardColor' + GeoHeatMapViewLayer: + allOf: + - $ref: '#/components/schemas/GeoViewLayerProperties' + - type: object + required: + - intensityField + - intensityDimension + - radius + - blur + - colors + properties: + intensityField: + type: string + description: Intensity field + intensityDimension: + $ref: '#/components/schemas/Axis' + radius: + description: Radius size in pixels + type: integer + blur: + description: Blur for heatmap points + type: integer + colors: + description: Colors define color encoding of data into a visualization + type: array + items: + $ref: '#/components/schemas/DashboardColor' + GeoViewProperties: + type: object + required: + - type + - shape + - queries + - note + - showNoteWhenEmpty + - center + - zoom + - allowPanAndZoom + - detectCoordinateFields + - layers + properties: + type: + type: string + enum: + - geo + queries: + type: array + items: + $ref: '#/components/schemas/DashboardQuery' + shape: + type: string + enum: + - chronograf-v2 + center: + description: Coordinates of the center of the map + type: object + required: + - lat + - lon + properties: + lat: + description: Latitude of the center of the map + type: number + format: double + lon: + description: Longitude of the center of the map + type: number + format: double + zoom: + description: Zoom level used for initial display of the map + type: number + format: double + minimum: 1 + maximum: 28 + allowPanAndZoom: + description: 'If true, map zoom and pan controls are enabled on the dashboard view' + type: boolean + default: true + detectCoordinateFields: + description: 'If true, search results get automatically regroupped so that lon,lat and value are treated as columns' + type: boolean + default: true + mapStyle: + description: 'Define map type - regular, satellite etc.' + type: string + note: + type: string + showNoteWhenEmpty: + description: 'If true, will display note when empty' + type: boolean + colors: + description: Colors define color encoding of data into a visualization + type: array + items: + $ref: '#/components/schemas/DashboardColor' + layers: + description: List of individual layers shown in the map + type: array + items: + $ref: '#/components/schemas/GeoViewLayer' Axes: description: The viewport for a View's visualizations type: object - required: ["x", "y"] + required: + - x + - 'y' properties: x: - $ref: "#/components/schemas/Axis" - "y": # Quoted to prevent YAML parser from interpreting y as shorthand for true. - $ref: "#/components/schemas/Axis" + $ref: '#/components/schemas/Axis' + 'y': + $ref: '#/components/schemas/Axis' + StaticLegend: + description: StaticLegend represents the options specific to the static legend + type: object + properties: + colorizeRows: + type: boolean + heightRatio: + type: number + format: float + opacity: + type: number + format: float + orientationThreshold: + type: integer + valueAxis: + type: string + widthRatio: + type: number + format: float Legend: description: Legend define encoding of data into a view's legend type: object + deprecated: true properties: type: description: The style of the legend. @@ -9786,9 +9984,7 @@ components: enum: - static orientation: - description: >- - orientation is the location of the legend with respect to the view - graph + description: orientation is the location of the legend with respect to the view graph type: string enum: - top @@ -9796,7 +9992,7 @@ components: - left - right DecimalPlaces: - description: Indicates whether decimal places should be enforced, and how many digits it should show. + description: 'Indicates whether decimal places should be enforced, and how many digits it should show.' type: object properties: isEnforced: @@ -9810,7 +10006,8 @@ components: properties: type: type: string - enum: [constant] + enum: + - constant values: type: array items: @@ -9819,7 +10016,8 @@ components: properties: type: type: string - enum: [map] + enum: + - map values: type: object additionalProperties: @@ -9828,7 +10026,8 @@ components: properties: type: type: string - enum: [query] + enum: + - query values: type: object properties: @@ -9836,108 +10035,27 @@ components: type: string language: type: string - Variable: - type: object - required: - - name - - orgID - - arguments - properties: - links: - type: object - readOnly: true - properties: - self: - type: string - format: uri - org: - type: string - format: uri - labels: - type: string - format: uri - id: - readOnly: true - type: string - orgID: - type: string - name: - type: string - description: - type: string - selected: - type: array - items: - type: string - labels: - $ref: "#/components/schemas/Labels" - arguments: - $ref: "#/components/schemas/VariableProperties" - createdAt: - type: string - format: date-time - updatedAt: - type: string - format: date-time - Variables: - type: object - example: - variables: - - id: "1221432" - name: ":ok:" - selected: - - hello - arguments: - type: constant - values: - - howdy - - hello - - hi - - yo - - oy - - id: "1221432" - name: ":ok:" - selected: - - c - arguments: - type: map - values: - a: fdjaklfdjkldsfjlkjdsa - b: dfaksjfkljekfajekdljfas - c: fdjksajfdkfeawfeea - - id: "1221432" - name: ":ok:" - selected: - - host - arguments: - type: query - query: 'from(bucket: "foo") |> showMeasurements()' - language: flux - properties: - variables: - type: array - items: - $ref: "#/components/schemas/Variable" VariableProperties: type: object oneOf: - - $ref: "#/components/schemas/QueryVariableProperties" - - $ref: "#/components/schemas/ConstantVariableProperties" - - $ref: "#/components/schemas/MapVariableProperties" + - $ref: '#/components/schemas/QueryVariableProperties' + - $ref: '#/components/schemas/ConstantVariableProperties' + - $ref: '#/components/schemas/MapVariableProperties' 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/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' View: required: - name @@ -9955,7 +10073,7 @@ components: name: type: string properties: - $ref: "#/components/schemas/ViewProperties" + $ref: '#/components/schemas/ViewProperties' Views: type: object properties: @@ -9967,14 +10085,14 @@ components: views: type: array items: - $ref: "#/components/schemas/View" + $ref: '#/components/schemas/View' CellUpdate: type: object properties: x: type: integer format: int32 - "y": # Quoted to prevent YAML parser from interpreting y as shorthand for true. + 'y': type: integer format: int32 w: @@ -9991,7 +10109,7 @@ components: x: type: integer format: int32 - "y": # Quoted to prevent YAML parser from interpreting y as shorthand for true. + 'y': type: integer format: int32 w: @@ -10022,13 +10140,13 @@ components: CellWithViewProperties: type: object allOf: - - $ref: "#/components/schemas/Cell" + - $ref: '#/components/schemas/Cell' - type: object properties: name: type: string properties: - $ref: "#/components/schemas/ViewProperties" + $ref: '#/components/schemas/ViewProperties' Cell: type: object properties: @@ -10044,7 +10162,7 @@ components: x: type: integer format: int32 - "y": # Quoted to prevent YAML parser from interpreting y as shorthand for true. + 'y': type: integer format: int32 w: @@ -10059,11 +10177,11 @@ components: CellsWithViewProperties: type: array items: - $ref: "#/components/schemas/CellWithViewProperties" + $ref: '#/components/schemas/CellWithViewProperties' Cells: type: array items: - $ref: "#/components/schemas/Cell" + $ref: '#/components/schemas/Cell' Secrets: additionalProperties: type: string @@ -10078,7 +10196,7 @@ components: type: string SecretKeysResponse: allOf: - - $ref: "#/components/schemas/SecretKeys" + - $ref: '#/components/schemas/SecretKeys' - type: object properties: links: @@ -10106,31 +10224,31 @@ components: DashboardWithViewProperties: type: object allOf: - - $ref: "#/components/schemas/CreateDashboardRequest" + - $ref: '#/components/schemas/CreateDashboardRequest' - type: object properties: links: type: object example: - self: "/api/v2/dashboards/1" - cells: "/api/v2/dashboards/1/cells" - owners: "/api/v2/dashboards/1/owners" - members: "/api/v2/dashboards/1/members" - labels: "/api/v2/dashboards/1/labels" - org: "/api/v2/labels/1" + self: /api/v2/dashboards/1 + cells: /api/v2/dashboards/1/cells + owners: /api/v2/dashboards/1/owners + members: /api/v2/dashboards/1/members + labels: /api/v2/dashboards/1/labels + org: /api/v2/labels/1 properties: self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' cells: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' org: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' id: readOnly: true type: string @@ -10144,37 +10262,37 @@ components: type: string format: date-time cells: - $ref: "#/components/schemas/CellsWithViewProperties" + $ref: '#/components/schemas/CellsWithViewProperties' labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' Dashboard: type: object allOf: - - $ref: "#/components/schemas/CreateDashboardRequest" + - $ref: '#/components/schemas/CreateDashboardRequest' - type: object properties: links: type: object example: - self: "/api/v2/dashboards/1" - cells: "/api/v2/dashboards/1/cells" - owners: "/api/v2/dashboards/1/owners" - members: "/api/v2/dashboards/1/members" - labels: "/api/v2/dashboards/1/labels" - org: "/api/v2/labels/1" + self: /api/v2/dashboards/1 + cells: /api/v2/dashboards/1/cells + owners: /api/v2/dashboards/1/owners + members: /api/v2/dashboards/1/members + labels: /api/v2/dashboards/1/labels + org: /api/v2/labels/1 properties: self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' cells: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' org: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' id: readOnly: true type: string @@ -10188,18 +10306,18 @@ components: type: string format: date-time cells: - $ref: "#/components/schemas/Cells" + $ref: '#/components/schemas/Cells' labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' Dashboards: type: object properties: links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' dashboards: type: array items: - $ref: "#/components/schemas/Dashboard" + $ref: '#/components/schemas/Dashboard' Source: type: object properties: @@ -10224,7 +10342,10 @@ components: type: string type: type: string - enum: ["v1", "v2", "self"] + enum: + - v1 + - v2 + - self url: type: string format: uri @@ -10265,7 +10386,7 @@ components: sources: type: array items: - $ref: "#/components/schemas/Source" + $ref: '#/components/schemas/Source' ScraperTargetRequest: type: object properties: @@ -10275,11 +10396,12 @@ components: type: type: string description: The type of the metrics to be parsed. - enum: [prometheus] + enum: + - prometheus url: type: string description: The URL of the metrics endpoint. - example: http://localhost:9090/metrics + example: 'http://localhost:9090/metrics' orgID: type: string description: The organization ID. @@ -10293,7 +10415,7 @@ components: ScraperTargetResponse: type: object allOf: - - $ref: "#/components/schemas/ScraperTargetRequest" + - $ref: '#/components/schemas/ScraperTargetRequest' - type: object properties: id: @@ -10309,29 +10431,29 @@ components: type: object readOnly: true example: - self: "/api/v2/scrapers/1" - owners: "/api/v2/scrapers/1/owners" - members: "/api/v2/scrapers/1/members" - bucket: "/api/v2/buckets/1" - organization: "/api/v2/orgs/1" + self: /api/v2/scrapers/1 + owners: /api/v2/scrapers/1/owners + members: /api/v2/scrapers/1/members + bucket: /api/v2/buckets/1 + organization: /api/v2/orgs/1 properties: self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' bucket: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' organization: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' ScraperTargetResponses: type: object properties: configurations: type: array items: - $ref: "#/components/schemas/ScraperTargetResponse" + $ref: '#/components/schemas/ScraperTargetResponse' DocumentMeta: type: object properties: @@ -10363,20 +10485,20 @@ components: type: string readOnly: true meta: - $ref: "#/components/schemas/DocumentMeta" + $ref: '#/components/schemas/DocumentMeta' content: type: object labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' links: type: object readOnly: true example: - self: "/api/v2/documents/templates/1" + self: /api/v2/documents/templates/1 properties: self: description: The document URL. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' required: - id - meta @@ -10385,7 +10507,7 @@ components: type: object properties: meta: - $ref: "#/components/schemas/DocumentMeta" + $ref: '#/components/schemas/DocumentMeta' content: type: object org: @@ -10406,7 +10528,7 @@ components: type: object properties: meta: - $ref: "#/components/schemas/DocumentMeta" + $ref: '#/components/schemas/DocumentMeta' content: type: object DocumentListEntry: @@ -10416,18 +10538,18 @@ components: type: string readOnly: true meta: - $ref: "#/components/schemas/DocumentMeta" + $ref: '#/components/schemas/DocumentMeta' labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' links: type: object readOnly: true example: - self: "/api/v2/documents/templates/1" + self: /api/v2/documents/templates/1 properties: self: description: The document URL. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' required: - id - meta @@ -10437,7 +10559,7 @@ components: documents: type: array items: - $ref: "#/components/schemas/DocumentListEntry" + $ref: '#/components/schemas/DocumentListEntry' TelegrafRequest: type: object properties: @@ -10458,19 +10580,19 @@ components: type: string TelegrafRequestPlugin: oneOf: - - $ref: "#/components/schemas/TelegrafPluginInputCpu" - - $ref: "#/components/schemas/TelegrafPluginInputDisk" - - $ref: "#/components/schemas/TelegrafPluginInputDiskio" - - $ref: "#/components/schemas/TelegrafPluginInputDocker" - - $ref: "#/components/schemas/TelegrafPluginInputFile" - - $ref: "#/components/schemas/TelegrafPluginInputKubernetes" - - $ref: "#/components/schemas/TelegrafPluginInputLogParser" - - $ref: "#/components/schemas/TelegrafPluginInputProcstat" - - $ref: "#/components/schemas/TelegrafPluginInputPrometheus" - - $ref: "#/components/schemas/TelegrafPluginInputRedis" - - $ref: "#/components/schemas/TelegrafPluginInputSyslog" - - $ref: "#/components/schemas/TelegrafPluginOutputFile" - - $ref: "#/components/schemas/TelegrafPluginOutputInfluxDBV2" + - $ref: '#/components/schemas/TelegrafPluginInputCpu' + - $ref: '#/components/schemas/TelegrafPluginInputDisk' + - $ref: '#/components/schemas/TelegrafPluginInputDiskio' + - $ref: '#/components/schemas/TelegrafPluginInputDocker' + - $ref: '#/components/schemas/TelegrafPluginInputFile' + - $ref: '#/components/schemas/TelegrafPluginInputKubernetes' + - $ref: '#/components/schemas/TelegrafPluginInputLogParser' + - $ref: '#/components/schemas/TelegrafPluginInputProcstat' + - $ref: '#/components/schemas/TelegrafPluginInputPrometheus' + - $ref: '#/components/schemas/TelegrafPluginInputRedis' + - $ref: '#/components/schemas/TelegrafPluginInputSyslog' + - $ref: '#/components/schemas/TelegrafPluginOutputFile' + - $ref: '#/components/schemas/TelegrafPluginOutputInfluxDBV2' TelegrafPluginInputCpu: type: object required: @@ -10479,10 +10601,12 @@ components: properties: name: type: string - enum: ["cpu"] + enum: + - cpu type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputDisk: @@ -10493,10 +10617,12 @@ components: properties: name: type: string - enum: ["disk"] + enum: + - disk type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputDiskio: @@ -10507,10 +10633,12 @@ components: properties: name: type: string - enum: ["diskio"] + enum: + - diskio type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputDocker: @@ -10522,14 +10650,16 @@ components: properties: name: type: string - enum: ["docker"] + enum: + - docker type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputDockerConfig" + $ref: '#/components/schemas/TelegrafPluginInputDockerConfig' TelegrafPluginInputFile: type: object required: @@ -10539,14 +10669,16 @@ components: properties: name: type: string - enum: ["file"] + enum: + - file type: type: string - enum: [input] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputFileConfig" + $ref: '#/components/schemas/TelegrafPluginInputFileConfig' TelegrafPluginInputKernel: type: object required: @@ -10555,10 +10687,12 @@ components: properties: name: type: string - enum: ["kernel"] + enum: + - kernel type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputKubernetes: @@ -10570,14 +10704,16 @@ components: properties: name: type: string - enum: ["kubernetes"] + enum: + - kubernetes type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputKubernetesConfig" + $ref: '#/components/schemas/TelegrafPluginInputKubernetesConfig' TelegrafPluginInputLogParser: type: object required: @@ -10587,14 +10723,16 @@ components: properties: name: type: string - enum: ["logparser"] + enum: + - logparser type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputLogParserConfig" + $ref: '#/components/schemas/TelegrafPluginInputLogParserConfig' TelegrafPluginInputMem: type: object required: @@ -10603,10 +10741,12 @@ components: properties: name: type: string - enum: ["mem"] + enum: + - mem type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputNetResponse: @@ -10617,10 +10757,12 @@ components: properties: name: type: string - enum: ["net_response"] + enum: + - net_response type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputNet: @@ -10631,10 +10773,12 @@ components: properties: name: type: string - enum: ["net"] + enum: + - net type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputNginx: @@ -10645,10 +10789,12 @@ components: properties: name: type: string - enum: ["nginx"] + enum: + - nginx type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputProcesses: @@ -10659,10 +10805,12 @@ components: properties: name: type: string - enum: ["processes"] + enum: + - processes type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputProcstat: @@ -10674,14 +10822,16 @@ components: properties: name: type: string - enum: ["procstat"] + enum: + - procstat type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputProcstatConfig" + $ref: '#/components/schemas/TelegrafPluginInputProcstatConfig' TelegrafPluginInputPrometheus: type: object required: @@ -10691,14 +10841,16 @@ components: properties: name: type: string - enum: ["prometheus"] + enum: + - prometheus type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputPrometheusConfig" + $ref: '#/components/schemas/TelegrafPluginInputPrometheusConfig' TelegrafPluginInputRedis: type: object required: @@ -10708,14 +10860,16 @@ components: properties: name: type: string - enum: ["redis"] + enum: + - redis type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputRedisConfig" + $ref: '#/components/schemas/TelegrafPluginInputRedisConfig' TelegrafPluginInputSyslog: type: object required: @@ -10725,14 +10879,16 @@ components: properties: name: type: string - enum: ["syslog"] + enum: + - syslog type: type: string - enum: ["input"] + enum: + - input comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginInputSyslogConfig" + $ref: '#/components/schemas/TelegrafPluginInputSyslogConfig' TelegrafPluginInputSwap: type: object required: @@ -10741,10 +10897,12 @@ components: properties: name: type: string - enum: ["swap"] + enum: + - swap type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputSystem: @@ -10755,10 +10913,12 @@ components: properties: name: type: string - enum: ["system"] + enum: + - system type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginInputTail: @@ -10769,10 +10929,12 @@ components: properties: name: type: string - enum: ["tail"] + enum: + - tail type: type: string - enum: ["input"] + enum: + - input comment: type: string TelegrafPluginOutputFile: @@ -10784,14 +10946,16 @@ components: properties: name: type: string - enum: ["file"] + enum: + - file type: type: string - enum: ["output"] + enum: + - output comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginOutputFileConfig" + $ref: '#/components/schemas/TelegrafPluginOutputFileConfig' TelegrafPluginOutputInfluxDBV2: type: object required: @@ -10801,18 +10965,20 @@ components: properties: name: type: string - enum: ["influxdb_v2"] + enum: + - influxdb_v2 type: type: string - enum: ["output"] + enum: + - output comment: type: string config: - $ref: "#/components/schemas/TelegrafPluginOutputInfluxDBV2Config" + $ref: '#/components/schemas/TelegrafPluginOutputInfluxDBV2Config' Telegraf: type: object allOf: - - $ref: "#/components/schemas/TelegrafRequest" + - $ref: '#/components/schemas/TelegrafRequest' - type: object properties: id: @@ -10822,29 +10988,29 @@ components: type: object readOnly: true example: - self: "/api/v2/telegrafs/1" - lables: "/api/v2/telegrafs/1/labels" - owners: "/api/v2/telegrafs/1/owners" - members: "/api/v2/telegrafs/1/members" + self: /api/v2/telegrafs/1 + lables: /api/v2/telegrafs/1/labels + owners: /api/v2/telegrafs/1/owners + members: /api/v2/telegrafs/1/members properties: self: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: readOnly: true - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' Telegrafs: type: object properties: configurations: type: array items: - $ref: "#/components/schemas/Telegraf" + $ref: '#/components/schemas/Telegraf' TelegrafPlugin: type: object properties: @@ -10866,7 +11032,7 @@ components: plugins: type: array items: - $ref: "#/components/schemas/TelegrafPlugin" + $ref: '#/components/schemas/TelegrafPlugin' TelegrafPluginInputDockerConfig: type: object required: @@ -10933,7 +11099,9 @@ components: properties: type: type: string - enum: [stdout, path] + enum: + - stdout + - path path: type: string TelegrafPluginOutputInfluxDBV2Config: @@ -10961,34 +11129,6 @@ components: allowed: description: True means that the influxdb instance has NOT had initial setup; false means that the database has been setup. type: boolean - OnboardingRequest: - type: object - properties: - username: - type: string - password: - type: string - org: - type: string - bucket: - type: string - retentionPeriodHrs: - type: integer - required: - - username - - org - - bucket - OnboardingResponse: - type: object - properties: - user: - $ref: "#/components/schemas/User" - org: - $ref: "#/components/schemas/Organization" - bucket: - $ref: "#/components/schemas/Bucket" - auth: - $ref: "#/components/schemas/Authorization" PasswordResetBody: properties: password: @@ -11014,10 +11154,10 @@ components: started: type: string format: date-time - example: "2019-03-13T10:09:33.891196-04:00" + example: '2019-03-13T10:09:33.891196-04:00' up: type: string - example: "14m45.911966424s" + example: 14m45.911966424s HealthCheck: type: object required: @@ -11031,7 +11171,7 @@ components: checks: type: array items: - $ref: "#/components/schemas/HealthCheck" + $ref: '#/components/schemas/HealthCheck' status: type: string enum: @@ -11044,7 +11184,7 @@ components: Labels: type: array items: - $ref: "#/components/schemas/Label" + $ref: '#/components/schemas/Label' Label: type: object properties: @@ -11061,10 +11201,14 @@ components: 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" } + example: + color: ffb3b3 + description: this is a description LabelCreateRequest: type: object - required: [orgID, name] + required: + - orgID + - name properties: orgID: type: string @@ -11075,7 +11219,9 @@ components: 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" } + example: + color: ffb3b3 + description: this is a description LabelUpdate: type: object properties: @@ -11086,7 +11232,9 @@ components: 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" } + example: + color: ffb3b3 + description: this is a description LabelMapping: type: object properties: @@ -11096,22 +11244,22 @@ components: type: object properties: labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' LabelResponse: type: object properties: label: - $ref: "#/components/schemas/Label" + $ref: '#/components/schemas/Label' links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' ASTResponse: description: Contains the AST for the supplied Flux query type: object properties: ast: - $ref: "#/components/schemas/Package" + $ref: '#/components/schemas/Package' WritePrecision: type: string enum: @@ -11129,19 +11277,20 @@ components: description: The name of the organization that owns this Task. type: string status: - $ref: "#/components/schemas/TaskStatusType" + $ref: '#/components/schemas/TaskStatusType' flux: description: The Flux script to run for this task. type: string description: description: An optional description of the task. type: string - required: [flux] + required: + - flux TaskUpdateRequest: type: object properties: status: - $ref: "#/components/schemas/TaskStatusType" + $ref: '#/components/schemas/TaskStatusType' flux: description: The Flux script to run for this task. type: string @@ -11179,29 +11328,29 @@ components: - inactive CheckDiscriminator: oneOf: - - $ref: "#/components/schemas/DeadmanCheck" - - $ref: "#/components/schemas/ThresholdCheck" - - $ref: "#/components/schemas/CustomCheck" + - $ref: '#/components/schemas/DeadmanCheck' + - $ref: '#/components/schemas/ThresholdCheck' + - $ref: '#/components/schemas/CustomCheck' discriminator: propertyName: type mapping: - deadman: "#/components/schemas/DeadmanCheck" - threshold: "#/components/schemas/ThresholdCheck" - custom: "#/components/schemas/CustomCheck" + deadman: ./DeadmanCheck.yml + threshold: ./ThresholdCheck.yml + custom: ./CustomCheck.yml Check: allOf: - - $ref: "#/components/schemas/CheckDiscriminator" + - $ref: '#/components/schemas/CheckDiscriminator' PostCheck: allOf: - - $ref: "#/components/schemas/CheckDiscriminator" + - $ref: '#/components/schemas/CheckDiscriminator' Checks: properties: checks: type: array items: - $ref: "#/components/schemas/Check" + $ref: '#/components/schemas/Check' links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' CheckBase: properties: id: @@ -11212,6 +11361,9 @@ components: orgID: description: The ID of the organization that owns this check. type: string + taskID: + description: The ID of the task associated with this check. + type: string ownerID: description: The ID of creator used to create this check. type: string @@ -11225,14 +11377,14 @@ components: format: date-time readOnly: true query: - $ref: "#/components/schemas/DashboardQuery" + $ref: '#/components/schemas/DashboardQuery' status: - $ref: "#/components/schemas/TaskStatusType" + $ref: '#/components/schemas/TaskStatusType' description: description: An optional description of the check. type: string latestCompleted: - description: Timestamp of latest scheduled, completed run, RFC3339. + description: 'Timestamp of latest scheduled, completed run, RFC3339.' type: string format: date-time readOnly: true @@ -11247,51 +11399,56 @@ components: readOnly: true type: string labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' links: type: object readOnly: true example: - self: "/api/v2/checks/1" - labels: "/api/v2/checks/1/labels" - members: "/api/v2/checks/1/members" - owners: "/api/v2/checks/1/owners" - query: "/api/v2/checks/1/query" + self: /api/v2/checks/1 + labels: /api/v2/checks/1/labels + members: /api/v2/checks/1/members + owners: /api/v2/checks/1/owners + query: /api/v2/checks/1/query properties: self: description: URL for this check - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: description: URL to retrieve labels for this check - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: description: URL to retrieve members for this check - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: description: URL to retrieve owners for this check - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' query: description: URL to retrieve flux script for this check - $ref: "#/components/schemas/Link" - required: [name, orgID, query] + $ref: '#/components/schemas/Link' + required: + - name + - orgID + - query ThresholdCheck: allOf: - - $ref: "#/components/schemas/CheckBase" + - $ref: '#/components/schemas/CheckBase' - type: object - required: [type] + required: + - type properties: type: type: string - enum: [threshold] + enum: + - threshold thresholds: type: array items: - $ref: "#/components/schemas/Threshold" + $ref: '#/components/schemas/Threshold' every: description: Check repetition interval. type: string offset: - description: Duration to delay after the schedule, before executing check. + description: 'Duration to delay after the schedule, before executing check.' type: string tags: description: List of tags to write to each status. @@ -11308,24 +11465,26 @@ components: type: string Threshold: oneOf: - - $ref: "#/components/schemas/GreaterThreshold" - - $ref: "#/components/schemas/LesserThreshold" - - $ref: "#/components/schemas/RangeThreshold" + - $ref: '#/components/schemas/GreaterThreshold' + - $ref: '#/components/schemas/LesserThreshold' + - $ref: '#/components/schemas/RangeThreshold' discriminator: propertyName: type mapping: - greater: "#/components/schemas/GreaterThreshold" - lesser: "#/components/schemas/LesserThreshold" - range: "#/components/schemas/RangeThreshold" + greater: ./GreaterThreshold.yml + lesser: ./LesserThreshold.yml + range: ./RangeThreshold.yml DeadmanCheck: allOf: - - $ref: "#/components/schemas/CheckBase" + - $ref: '#/components/schemas/CheckBase' - type: object - required: [type] + required: + - type properties: type: type: string - enum: [deadman] + enum: + - deadman timeSince: description: String duration before deadman triggers. type: string @@ -11333,15 +11492,15 @@ components: description: String duration for time that a series is considered stale and should not trigger deadman. type: string reportZero: - description: If only zero values reported since time, trigger an alert + description: 'If only zero values reported since time, trigger an alert' type: boolean level: - $ref: "#/components/schemas/CheckStatusLevel" + $ref: '#/components/schemas/CheckStatusLevel' every: description: Check repetition interval. type: string offset: - description: Duration to delay after the schedule, before executing check. + description: 'Duration to delay after the schedule, before executing check.' type: string tags: description: List of tags to write to each status. @@ -11358,53 +11517,66 @@ components: type: string CustomCheck: allOf: - - $ref: "#/components/schemas/CheckBase" + - $ref: '#/components/schemas/CheckBase' - type: object properties: type: type: string - enum: [custom] - required: [type] + enum: + - custom + required: + - type ThresholdBase: properties: level: - $ref: "#/components/schemas/CheckStatusLevel" + $ref: '#/components/schemas/CheckStatusLevel' allValues: - description: If true, only alert if all values meet threshold. + description: 'If true, only alert if all values meet threshold.' type: boolean GreaterThreshold: allOf: - - $ref: "#/components/schemas/ThresholdBase" + - $ref: '#/components/schemas/ThresholdBase' - type: object - required: [type, value] + required: + - type + - value properties: type: type: string - enum: [greater] + enum: + - greater value: type: number format: float LesserThreshold: allOf: - - $ref: "#/components/schemas/ThresholdBase" + - $ref: '#/components/schemas/ThresholdBase' - type: object - required: [type, value] + required: + - type + - value properties: type: type: string - enum: [lesser] + enum: + - lesser value: type: number format: float RangeThreshold: allOf: - - $ref: "#/components/schemas/ThresholdBase" + - $ref: '#/components/schemas/ThresholdBase' - type: object - required: [type, min, max, within] + required: + - type + - min + - max + - within properties: type: type: string - enum: [range] + enum: + - range min: type: number format: float @@ -11416,11 +11588,22 @@ components: CheckStatusLevel: description: The state to record if check matches a criteria. type: string - enum: ["UNKNOWN", "OK", "INFO", "CRIT", "WARN"] + enum: + - UNKNOWN + - OK + - INFO + - CRIT + - WARN RuleStatusLevel: description: The state to record if check matches a criteria. type: string - enum: ["UNKNOWN", "OK", "INFO", "CRIT", "WARN", "ANY"] + enum: + - UNKNOWN + - OK + - INFO + - CRIT + - WARN + - ANY NotificationRuleUpdate: type: object properties: @@ -11435,33 +11618,33 @@ components: - inactive NotificationRuleDiscriminator: oneOf: - - $ref: "#/components/schemas/SlackNotificationRule" - - $ref: "#/components/schemas/SMTPNotificationRule" - - $ref: "#/components/schemas/PagerDutyNotificationRule" - - $ref: "#/components/schemas/HTTPNotificationRule" - - $ref: "#/components/schemas/TelegramNotificationRule" + - $ref: '#/components/schemas/SlackNotificationRule' + - $ref: '#/components/schemas/SMTPNotificationRule' + - $ref: '#/components/schemas/PagerDutyNotificationRule' + - $ref: '#/components/schemas/HTTPNotificationRule' + - $ref: '#/components/schemas/TelegramNotificationRule' discriminator: propertyName: type mapping: - slack: "#/components/schemas/SlackNotificationRule" - smtp: "#/components/schemas/SMTPNotificationRule" - pagerduty: "#/components/schemas/PagerDutyNotificationRule" - http: "#/components/schemas/HTTPNotificationRule" - telegram: "#/components/schemas/TelegramNotificationRule" + slack: ./SlackNotificationRule.yml + smtp: ./SMTPNotificationRule.yml + pagerduty: ./PagerDutyNotificationRule.yml + http: ./HTTPNotificationRule.yml + telegram: ./TelegramNotificationRule.yml NotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleDiscriminator" + - $ref: '#/components/schemas/NotificationRuleDiscriminator' PostNotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleDiscriminator" + - $ref: '#/components/schemas/NotificationRuleDiscriminator' NotificationRules: properties: notificationRules: type: array items: - $ref: "#/components/schemas/NotificationRule" + $ref: '#/components/schemas/NotificationRule' links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' NotificationRuleBase: type: object required: @@ -11474,7 +11657,7 @@ components: - endpointID properties: latestCompleted: - description: Timestamp of latest scheduled, completed run, RFC3339. + description: 'Timestamp of latest scheduled, completed run, RFC3339.' type: string format: date-time readOnly: true @@ -11496,6 +11679,9 @@ components: orgID: description: The ID of the organization that owns this notification rule. type: string + taskID: + description: The ID of the task associated with this notification rule. + type: string ownerID: description: The ID of creator used to create this notification rule. type: string @@ -11509,7 +11695,7 @@ components: format: date-time readOnly: true status: - $ref: "#/components/schemas/TaskStatusType" + $ref: '#/components/schemas/TaskStatusType' name: description: Human-readable name describing the notification rule. type: string @@ -11519,21 +11705,21 @@ components: description: The notification repetition interval. type: string offset: - description: Duration to delay after the schedule, before executing check. + description: 'Duration to delay after the schedule, before executing check.' type: string runbookLink: type: string limitEvery: - description: Don't notify me more than times every seconds. If set, limit cannot be empty. + description: 'Don''t notify me more than times every seconds. If set, limit cannot be empty.' type: integer limit: - description: Don't notify me more than times every seconds. If set, limitEvery cannot be empty. + description: 'Don''t notify me more than times every seconds. If set, limitEvery cannot be empty.' type: integer tagRules: description: List of tag rules the notification rule attempts to match. type: array items: - $ref: "#/components/schemas/TagRule" + $ref: '#/components/schemas/TagRule' description: description: An optional description of the notification rule. type: string @@ -11542,34 +11728,34 @@ components: type: array minItems: 1 items: - $ref: "#/components/schemas/StatusRule" + $ref: '#/components/schemas/StatusRule' labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' links: type: object readOnly: true example: - self: "/api/v2/notificationRules/1" - labels: "/api/v2/notificationRules/1/labels" - members: "/api/v2/notificationRules/1/members" - owners: "/api/v2/notificationRules/1/owners" - query: "/api/v2/notificationRules/1/query" + self: /api/v2/notificationRules/1 + labels: /api/v2/notificationRules/1/labels + members: /api/v2/notificationRules/1/members + owners: /api/v2/notificationRules/1/owners + query: /api/v2/notificationRules/1/query properties: self: description: URL for this endpoint. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: description: URL to retrieve labels for this notification rule. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: description: URL to retrieve members for this notification rule. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: description: URL to retrieve owners for this notification rule. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' query: description: URL to retrieve flux script for this notification rule. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' TagRule: type: object properties: @@ -11579,57 +11765,70 @@ components: type: string operator: type: string - enum: ["equal"] + enum: + - equal + - notequal + - equalregex + - notequalregex StatusRule: type: object properties: currentLevel: - $ref: "#/components/schemas/RuleStatusLevel" + $ref: '#/components/schemas/RuleStatusLevel' previousLevel: - $ref: "#/components/schemas/RuleStatusLevel" + $ref: '#/components/schemas/RuleStatusLevel' count: type: integer period: type: string HTTPNotificationRuleBase: type: object - required: [type] + required: + - type properties: type: type: string - enum: [http] + enum: + - http url: type: string HTTPNotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleBase" - - $ref: "#/components/schemas/HTTPNotificationRuleBase" + - $ref: '#/components/schemas/NotificationRuleBase' + - $ref: '#/components/schemas/HTTPNotificationRuleBase' SlackNotificationRuleBase: type: object - required: [type, messageTemplate] + required: + - type + - messageTemplate properties: type: type: string - enum: [slack] + enum: + - slack channel: type: string messageTemplate: type: string SlackNotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleBase" - - $ref: "#/components/schemas/SlackNotificationRuleBase" + - $ref: '#/components/schemas/NotificationRuleBase' + - $ref: '#/components/schemas/SlackNotificationRuleBase' SMTPNotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleBase" - - $ref: "#/components/schemas/SMTPNotificationRuleBase" + - $ref: '#/components/schemas/NotificationRuleBase' + - $ref: '#/components/schemas/SMTPNotificationRuleBase' SMTPNotificationRuleBase: type: object - required: [type, subjectTemplate, to] + required: + - type + - subjectTemplate + - to properties: type: type: string - enum: [smtp] + enum: + - smtp subjectTemplate: type: string bodyTemplate: @@ -11638,34 +11837,41 @@ components: type: string PagerDutyNotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleBase" - - $ref: "#/components/schemas/PagerDutyNotificationRuleBase" + - $ref: '#/components/schemas/NotificationRuleBase' + - $ref: '#/components/schemas/PagerDutyNotificationRuleBase' PagerDutyNotificationRuleBase: type: object - required: [type, messageTemplate] + required: + - type + - messageTemplate properties: type: type: string - enum: [pagerduty] + enum: + - pagerduty messageTemplate: type: string TelegramNotificationRule: allOf: - - $ref: "#/components/schemas/NotificationRuleBase" - - $ref: "#/components/schemas/TelegramNotificationRuleBase" + - $ref: '#/components/schemas/NotificationRuleBase' + - $ref: '#/components/schemas/TelegramNotificationRuleBase' TelegramNotificationRuleBase: type: object - required: [type, messageTemplate, channel] + required: + - type + - messageTemplate + - channel properties: type: description: The discriminator between other types of notification rules is "telegram". type: string - enum: [telegram] + enum: + - telegram 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" . + description: 'Parse mode of the message text per https://core.telegram.org/bots/api#formatting-options . Defaults to "MarkdownV2" .' type: string enum: - MarkdownV2 @@ -11676,7 +11882,6 @@ components: type: boolean NotificationEndpointUpdate: type: object - properties: name: type: string @@ -11689,34 +11894,36 @@ components: - inactive NotificationEndpointDiscrimator: oneOf: - - $ref: "#/components/schemas/SlackNotificationEndpoint" - - $ref: "#/components/schemas/PagerDutyNotificationEndpoint" - - $ref: "#/components/schemas/HTTPNotificationEndpoint" - - $ref: "#/components/schemas/TelegramNotificationEndpoint" + - $ref: '#/components/schemas/SlackNotificationEndpoint' + - $ref: '#/components/schemas/PagerDutyNotificationEndpoint' + - $ref: '#/components/schemas/HTTPNotificationEndpoint' + - $ref: '#/components/schemas/TelegramNotificationEndpoint' discriminator: propertyName: type mapping: - slack: "#/components/schemas/SlackNotificationEndpoint" - pagerduty: "#/components/schemas/PagerDutyNotificationEndpoint" - http: "#/components/schemas/HTTPNotificationEndpoint" - telegram: "#/components/schemas/TelegramNotificationEndpoint" + slack: ./SlackNotificationEndpoint.yml + pagerduty: ./PagerDutyNotificationEndpoint.yml + http: ./HTTPNotificationEndpoint.yml + telegram: ./TelegramNotificationEndpoint.yml NotificationEndpoint: allOf: - - $ref: "#/components/schemas/NotificationEndpointDiscrimator" + - $ref: '#/components/schemas/NotificationEndpointDiscrimator' PostNotificationEndpoint: allOf: - - $ref: "#/components/schemas/NotificationEndpointDiscrimator" + - $ref: '#/components/schemas/NotificationEndpointDiscrimator' NotificationEndpoints: properties: notificationEndpoints: type: array items: - $ref: "#/components/schemas/NotificationEndpoint" + $ref: '#/components/schemas/NotificationEndpoint' links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' NotificationEndpointBase: type: object - required: [type, name] + required: + - type + - name properties: id: type: string @@ -11741,36 +11948,38 @@ components: description: The status of the endpoint. default: active type: string - enum: ["active", "inactive"] + enum: + - active + - inactive labels: - $ref: "#/components/schemas/Labels" + $ref: '#/components/schemas/Labels' links: type: object readOnly: true example: - self: "/api/v2/notificationEndpoints/1" - labels: "/api/v2/notificationEndpoints/1/labels" - members: "/api/v2/notificationEndpoints/1/members" - owners: "/api/v2/notificationEndpoints/1/owners" + self: /api/v2/notificationEndpoints/1 + labels: /api/v2/notificationEndpoints/1/labels + members: /api/v2/notificationEndpoints/1/members + owners: /api/v2/notificationEndpoints/1/owners properties: self: description: URL for this endpoint. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' labels: description: URL to retrieve labels for this endpoint. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' members: description: URL to retrieve members for this endpoint. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' owners: description: URL to retrieve owners for this endpoint. - $ref: "#/components/schemas/Link" + $ref: '#/components/schemas/Link' type: - $ref: "#/components/schemas/NotificationEndpointType" + $ref: '#/components/schemas/NotificationEndpointType' SlackNotificationEndpoint: type: object allOf: - - $ref: "#/components/schemas/NotificationEndpointBase" + - $ref: '#/components/schemas/NotificationEndpointBase' - type: object properties: url: @@ -11782,9 +11991,10 @@ components: PagerDutyNotificationEndpoint: type: object allOf: - - $ref: "#/components/schemas/NotificationEndpointBase" + - $ref: '#/components/schemas/NotificationEndpointBase' - type: object - required: [routingKey] + required: + - routingKey properties: clientURL: type: string @@ -11793,9 +12003,12 @@ components: HTTPNotificationEndpoint: type: object allOf: - - $ref: "#/components/schemas/NotificationEndpointBase" + - $ref: '#/components/schemas/NotificationEndpointBase' - type: object - required: [url, authMethod, method] + required: + - url + - authMethod + - method properties: url: type: string @@ -11807,10 +12020,16 @@ components: type: string method: type: string - enum: ["POST", "GET", "PUT"] + enum: + - POST + - GET + - PUT authMethod: type: string - enum: ["none", "basic", "bearer"] + enum: + - none + - basic + - bearer contentTemplate: type: string headers: @@ -11821,19 +12040,25 @@ components: TelegramNotificationEndpoint: type: object allOf: - - $ref: "#/components/schemas/NotificationEndpointBase" + - $ref: '#/components/schemas/NotificationEndpointBase' - type: object - required: [token, channel] + required: + - token + - channel properties: token: - description: Specifies the Telegram bot token. See https://core.telegram.org/bots#creating-a-new-bot . + description: 'Specifies the Telegram bot token. See https://core.telegram.org/bots#creating-a-new-bot .' type: string channel: - description: ID of the telegram channel, a chat_id in https://core.telegram.org/bots/api#sendmessage . + description: 'ID of the telegram channel, a chat_id in https://core.telegram.org/bots/api#sendmessage .' type: string NotificationEndpointType: type: string - enum: ["slack", "pagerduty", "http", "telegram"] + enum: + - slack + - pagerduty + - http + - telegram DBRP: type: object properties: @@ -11860,26 +12085,24 @@ components: type: boolean description: Specify if this mapping represents the default retention policy for the database specificed. links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' oneOf: - required: - - orgID - - bucketID - - database - - retention_policy + - orgID + - bucketID + - database + - retention_policy - required: - - org - - bucketID - - database - - retention_policy + - org + - bucketID + - database + - retention_policy DBRPs: properties: - notificationEndpoints: + content: type: array items: - $ref: "#/components/schemas/DBRP" - links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/DBRP' DBRPUpdate: properties: database: @@ -11891,7 +12114,279 @@ components: default: type: boolean links: - $ref: "#/components/schemas/Links" + $ref: '#/components/schemas/Links' + Authorization: + required: + - orgID + - permissions + allOf: + - $ref: '#/components/schemas/AuthorizationUpdateRequest' + - type: object + properties: + createdAt: + type: string + format: date-time + readOnly: true + updatedAt: + type: string + format: date-time + readOnly: true + orgID: + type: string + description: ID of org that authorization is scoped to. + permissions: + type: array + minItems: 1 + description: List of permissions for an auth. An auth must have at least one Permission. + items: + $ref: '#/components/schemas/Permission' + id: + readOnly: true + type: string + token: + readOnly: true + type: string + description: Passed via the Authorization Header and Token Authentication type. + userID: + readOnly: true + type: string + description: ID of user that created and owns the token. + user: + readOnly: true + type: string + description: Name of user that created and owns the token. + org: + readOnly: true + type: string + description: Name of the org token is scoped to. + links: + type: object + readOnly: true + example: + self: /api/v2/authorizations/1 + user: /api/v2/users/12 + properties: + self: + readOnly: true + $ref: '#/components/schemas/Link' + user: + readOnly: true + $ref: '#/components/schemas/Link' + Authorizations: + type: object + properties: + links: + readOnly: true + $ref: '#/components/schemas/Links' + authorizations: + type: array + items: + $ref: '#/components/schemas/Authorization' + Permission: + required: + - action + - resource + properties: + action: + type: string + enum: + - read + - write + resource: + $ref: '#/components/schemas/Resource' + Resource: + type: object + required: + - type + properties: + type: + type: string + enum: + - authorizations + - buckets + - dashboards + - orgs + - sources + - tasks + - telegrafs + - users + - variables + - scrapers + - secrets + - labels + - views + - documents + - notificationRules + - notificationEndpoints + - checks + - dbrp + id: + type: string + nullable: true + description: If ID is set that is a permission for a specific resource. if it is not set it is a permission for all resources of that resource type. + name: + type: string + nullable: true + description: Optional name of the resource if the resource has a name field. + orgID: + type: string + nullable: true + description: If orgID is set that is a permission for all resources owned my that org. if it is not set it is a permission for all resources of that resource type. + org: + type: string + nullable: true + description: Optional name of the organization of the organization with orgID. + User: + properties: + id: + readOnly: true + type: string + oauthID: + type: string + name: + type: string + status: + description: If inactive the user is inactive. + default: active + type: string + enum: + - active + - inactive + required: + - name + Users: + type: object + properties: + links: + type: object + properties: + self: + type: string + format: uri + users: + type: array + items: + $ref: '#/components/schemas/UserResponse' + OnboardingRequest: + type: object + properties: + username: + type: string + password: + type: string + org: + type: string + bucket: + type: string + retentionPeriodSeconds: + type: integer + format: int64 + retentionPeriodHrs: + type: integer + 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` + token: + type: string + description: | + Authentication token to set on the initial user. If not specified, the server will generate a token. + required: + - username + - org + - bucket + OnboardingResponse: + type: object + properties: + user: + $ref: '#/components/schemas/UserResponse' + org: + $ref: '#/components/schemas/Organization' + bucket: + $ref: '#/components/schemas/Bucket' + auth: + $ref: '#/components/schemas/Authorization' + Variable: + type: object + required: + - name + - orgID + - arguments + properties: + links: + type: object + readOnly: true + properties: + self: + type: string + format: uri + org: + type: string + format: uri + labels: + type: string + format: uri + id: + readOnly: true + type: string + orgID: + type: string + name: + type: string + description: + type: string + selected: + type: array + items: + type: string + labels: + $ref: '#/components/schemas/Labels' + arguments: + $ref: '#/components/schemas/VariableProperties' + createdAt: + type: string + format: date-time + updatedAt: + type: string + format: date-time + Variables: + type: object + example: + variables: + - id: '1221432' + name: ':ok:' + selected: + - hello + arguments: + type: constant + values: + - howdy + - hello + - hi + - yo + - oy + - id: '1221432' + name: ':ok:' + selected: + - c + arguments: + type: map + values: + a: fdjaklfdjkldsfjlkjdsa + b: dfaksjfkljekfajekdljfas + c: fdjksajfdkfeawfeea + - id: '1221432' + name: ':ok:' + selected: + - host + arguments: + type: query + query: 'from(bucket: "foo") |> showMeasurements()' + language: flux + properties: + variables: + type: array + items: + $ref: '#/components/schemas/Variable' securitySchemes: BasicAuth: type: http diff --git a/api-docs/v2.0/swaggerV1Compat.yml b/api-docs/v2.0/swaggerV1Compat.yml index d18318498..d0ab5fd9d 100644 --- a/api-docs/v2.0/swaggerV1Compat.yml +++ b/api-docs/v2.0/swaggerV1Compat.yml @@ -1,3 +1,4 @@ +# this is a manually maintained file for these old routes until oats#15 is resolved openapi: "3.0.0" info: title: Influx API Service (V1 compatible endpoints) @@ -118,7 +119,7 @@ paths: name: Accept schema: type: string - description: Specifies how query results should be encoded in the response. **Note:** When using `application/csv`, query results include epoch timestamps instead of RFC3339 timestamps. + description: Specifies how query results should be encoded in the response. **Note:** With `application/csv`, query results include epoch timestamps instead of RFC3339 timestamps. default: application/json enum: - application/json @@ -253,7 +254,6 @@ components: test_measurement,,1603740794286107366,1,tag_value test_measurement,,1603740870053205649,2,tag_value test_measurement,,1603741221085428881,3,tag_value - Error: properties: code: diff --git a/assets/styles/layouts/_article.scss b/assets/styles/layouts/_article.scss index a63bbabb5..94f311b6c 100644 --- a/assets/styles/layouts/_article.scss +++ b/assets/styles/layouts/_article.scss @@ -103,6 +103,7 @@ @import "article/blocks", "article/buttons", + "article/captions", "article/children", "article/code", "article/cloud", @@ -111,6 +112,7 @@ "article/expand", "article/feedback", "article/flex", + "article/html-diagrams", "article/keybinding", "article/lists", "article/note", diff --git a/assets/styles/layouts/article/_blocks.scss b/assets/styles/layouts/article/_blocks.scss index 4316c056c..e226c6bbb 100644 --- a/assets/styles/layouts/article/_blocks.scss +++ b/assets/styles/layouts/article/_blocks.scss @@ -15,12 +15,14 @@ blockquote, } blockquote { + padding: 1rem 1rem 1rem 1.25rem; border-color: rgba($article-text, .25); p, li { font-size: 1.15rem; font-style: italic; color: rgba($article-text, .5); } + *:last-child {margin-bottom: 0;} } //////////////////////////////////////////////////////////////////////////////// diff --git a/assets/styles/layouts/article/_captions.scss b/assets/styles/layouts/article/_captions.scss new file mode 100644 index 000000000..3324d640a --- /dev/null +++ b/assets/styles/layouts/article/_captions.scss @@ -0,0 +1,15 @@ +.caption { + margin: -2rem 0 2rem; + padding-left: .25rem; + font-size: .8rem; + font-style: italic; + opacity: .8; + + p { line-height: 1.25rem; } +} + +.code-tabs-wrapper, .code-tab-content { + & + .caption { + margin-top: -2.75rem; + } +} \ No newline at end of file diff --git a/assets/styles/layouts/article/_html-diagrams.scss b/assets/styles/layouts/article/_html-diagrams.scss new file mode 100644 index 000000000..d846c7be0 --- /dev/null +++ b/assets/styles/layouts/article/_html-diagrams.scss @@ -0,0 +1,129 @@ +///////////////////////////// File System Diagrams ///////////////////////////// + +.fs-diagram { + display: inline-block; + margin: 1rem 0 2rem; + padding: 1.5rem 2.5rem 1.5rem 1.5rem; + font-family: $roboto-mono; + border-radius: $radius; + box-shadow: 1px 3px 10px $article-shadow; + & > ul { padding: 0; margin: 0; + li { line-height: 2rem; color: $article-code; } + ul { padding-left: 2rem; + li { + position: relative; + margin: 0; + line-height: 2rem; + border-left: 1px solid $article-code; + &:before { + content: ""; + display: inline-block; + width: 1rem; + height: .25rem; + margin-right: .55rem; + border-top: 1px solid $article-code; + } + &:last-child { + border: none; + &:after { + content: ""; + position: absolute; + margin: 0; + padding: 0; + left: 0; + top: 0; + height: 1.1rem; + border-left: 1px solid $article-code; + } + } + } + } + } + ul { list-style: none; } +} + +///////////////////////////////// Shard diagram //////////////////////////////// +#shard-diagram { + display: flex; + flex-direction: column; + max-width: 550px; + margin: 2.5rem auto 3rem; + + p {margin-bottom: 0; line-height: 1.25em;} + + .periods { + display: flex; + flex-direction: row; + justify-content: space-between; + } + .timeline { + display: flex; + flex-direction: row; + margin-top: .25rem; + padding: 0 .5rem; + + .interval { + border-top: 1px solid $article-text; + border-right: 1px solid $article-text; + height: .75rem; + flex-grow: 1; + &:first-child { + border-left: 1px solid $article-text; + } + } + } + .shard-groups { + display: flex; + flex-direction: row; + justify-content: space-around; + margin-top: .25rem; + padding: .5rem; + line-height: 1rem; + + .shard-group { + margin: 0 .25rem; + text-align: center; + padding: .5rem; + border-radius: .5rem; + background: $html-diagram-shard-group-bg; + flex-grow: 1; + box-shadow: 2px 2px 8px $article-shadow; + p:first-child {margin-bottom: .75rem;} + + .shard { + display: block; + margin-top: .5rem; + padding: .65rem 1rem; + color: #fff; + border-radius: .25rem; + @include gradient($article-table-header, 90deg) + background-attachment: fixed; + } + } + } +} + +///////////////////////////////// MEDIA QUERIES //////////////////////////////// + +@include media(small) { + #shard-diagram { + flex-direction: row; + .periods {flex-direction: column; margin-right: .5rem; } + .timeline { + flex-direction: column; + padding: .5rem 0; + .interval { + width: .75rem; + border-top: none; + border-right: none; + border-left: 1px solid $article-text; + border-bottom: 1px solid $article-text; + &:first-child{ border-top: 1px solid $article-text; } + } + } + .shard-groups { + flex-direction: column; + .shard-group { margin: .25rem 0;} + } + } +}; diff --git a/assets/styles/layouts/article/_tabbed-content.scss b/assets/styles/layouts/article/_tabbed-content.scss index 8ce6d0670..57fd2bdb3 100644 --- a/assets/styles/layouts/article/_tabbed-content.scss +++ b/assets/styles/layouts/article/_tabbed-content.scss @@ -90,7 +90,7 @@ margin: .75rem 0 3rem; width: 100%; - & > * { + & > :not(table, .fs-diagram) { width: 100%; margin-left: 0; } diff --git a/assets/styles/themes/_theme-dark.scss b/assets/styles/themes/_theme-dark.scss index 2bdaabcbc..8dcf81f61 100644 --- a/assets/styles/themes/_theme-dark.scss +++ b/assets/styles/themes/_theme-dark.scss @@ -209,6 +209,9 @@ $svg-geo-s2-cell: $b-dodger; $svg-geo-region: $p-comet; $svg-geo-point: $br-chartreuse; +// HTML diagram colors +$html-diagram-shard-group-bg: $article-table-row-alt; + // Diagram colors $diagram-arrow: $g6-smoke; diff --git a/assets/styles/themes/_theme-light.scss b/assets/styles/themes/_theme-light.scss index 9d6612f6b..25268966c 100644 --- a/assets/styles/themes/_theme-light.scss +++ b/assets/styles/themes/_theme-light.scss @@ -209,6 +209,8 @@ $svg-geo-s2-cell: $b-hydrogen !default; $svg-geo-region: $br-galaxy !default; $svg-geo-point: $p-potassium !default; +$html-diagram-shard-group-bg: $g20-white !default; + // Diagram colors $diagram-arrow: $g14-chromium !default; diff --git a/content/example.md b/content/example.md index 07f6f8db6..63c44f49b 100644 --- a/content/example.md +++ b/content/example.md @@ -93,7 +93,7 @@ This is a paragraph. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nu This is a paragraph. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc rutrum, metus id scelerisque euismod, erat ante suscipit nibh, ac congue enim risus id est. Etiam tristique nisi et tristique auctor. Morbi eu bibendum erat. Sed ullamcorper, dui id lobortis efficitur, mauris odio pharetra neque, vel tempor odio dolor blandit justo. #### Here's a title for this codeblock -{{% code-tabs-wrapper %}} +{{< code-tabs-wrapper >}} {{% code-tabs %}} [Flux](#) [InfluxQL](#) @@ -115,7 +115,7 @@ FROM "telegraf"."autogen"."mem" WHERE time > now() - 15m ``` {{% /code-tab-content %}} -{{% /code-tabs-wrapper %}} +{{< /code-tabs-wrapper >}} {{% enterprise %}} ### h3 This is a header3 diff --git a/content/influxdb/cloud/get-started.md b/content/influxdb/cloud/get-started.md index c10ab61e1..ae5eb0bfe 100644 --- a/content/influxdb/cloud/get-started.md +++ b/content/influxdb/cloud/get-started.md @@ -98,7 +98,7 @@ To use the `influx` CLI to manage and interact with your InfluxDB Cloud instance Click the following button to download and install `influx` CLI for macOS. -influx CLI (macOS) +influx CLI (macOS) #### Step 2: Unpackage the influx binary @@ -110,7 +110,7 @@ or run the following command in a macOS command prompt application such ```sh # Unpackage contents to the current working directory -tar zxvf ~/Downloads/influxdb2-client-2.0.4-darwin-amd64.tar.gz +tar zxvf ~/Downloads/influxdb2-client-2.0.5-darwin-amd64.tar.gz ``` #### Step 3: (Optional) Place the binary in your $PATH @@ -122,7 +122,7 @@ prefix the executable with `./` to run in place. If the binary is on your $PATH, ```sh # Copy the influx binary to your $PATH -sudo cp influxdb2-client-2.0.4-darwin-amd64/influx /usr/local/bin/ +sudo cp influxdb2-client-2.0.5-darwin-amd64/influx /usr/local/bin/ ``` {{% note %}} @@ -166,8 +166,8 @@ To see all available `influx` commands, type `influx -h` or check out [influx - Click one of the following buttons to download and install the `influx` CLI appropriate for your chipset. -influx CLI (amd64) -influx CLI (arm) +influx CLI (amd64) +influx CLI (arm) #### Step 2: Unpackage the influx binary @@ -175,7 +175,7 @@ Click one of the following buttons to download and install the `influx` CLI appr ```sh # Unpackage contents to the current working directory -tar xvfz influxdb-client-2.0.4-linux-amd64.tar.gz +tar xvfz influxdb-client-2.0.5-linux-amd64.tar.gz ``` #### Step 3: (Optional) Place the binary in your $PATH @@ -187,7 +187,7 @@ prefix the executable with `./` to run in place. If the binary is on your $PATH, ```sh # Copy the influx and influxd binary to your $PATH -sudo cp influxdb-client-2.0.4-linux-amd64/influx /usr/local/bin/ +sudo cp influxdb-client-2.0.5-linux-amd64/influx /usr/local/bin/ ``` {{% note %}} diff --git a/content/influxdb/cloud/influxdb-templates/use.md b/content/influxdb/cloud/influxdb-templates/use.md index 0343694f1..327467de3 100644 --- a/content/influxdb/cloud/influxdb-templates/use.md +++ b/content/influxdb/cloud/influxdb-templates/use.md @@ -55,7 +55,7 @@ To view a summary of what's included in a template before applying the template, use the [`influx template` command](/influxdb/cloud/reference/cli/influx/template/). View a summary of a template stored in your local filesystem or from a URL. -{{% code-tabs-wrapper %}} +{{< code-tabs-wrapper >}} {{% code-tabs %}} [From a file](#) [From a URL](#) @@ -78,14 +78,14 @@ influx template -u influx template -u https://raw.githubusercontent.com/influxdata/community-templates/master/linux_system/linux_system.yml ``` {{% /code-tab-content %}} -{{% /code-tabs-wrapper %}} +{{< /code-tabs-wrapper >}} ## Validate a template To validate a template before you install it or troubleshoot a template, use the [`influx template validate` command](/influxdb/cloud/reference/cli/influx/template/validate/). Validate a template stored in your local filesystem or from a URL. -{{% code-tabs-wrapper %}} +{{< code-tabs-wrapper >}} {{% code-tabs %}} [From a file](#) [From a URL](#) @@ -108,7 +108,7 @@ influx template validate -u influx template validate -u https://raw.githubusercontent.com/influxdata/community-templates/master/linux_system/linux_system.yml ``` {{% /code-tab-content %}} -{{% /code-tabs-wrapper %}} +{{< /code-tabs-wrapper >}} ## Apply templates Use the [`influx apply` command](/influxdb/cloud/reference/cli/influx/apply/) to install templates diff --git a/content/influxdb/cloud/monitor-alert/notification-endpoints/create.md b/content/influxdb/cloud/monitor-alert/notification-endpoints/create.md index 9a4675a05..99e2ae6c6 100644 --- a/content/influxdb/cloud/monitor-alert/notification-endpoints/create.md +++ b/content/influxdb/cloud/monitor-alert/notification-endpoints/create.md @@ -40,6 +40,10 @@ To send notifications about changes in your data, start by creating a notificati - For PagerDuty: - [Create a new service](https://support.pagerduty.com/docs/services-and-integrations#section-create-a-new-service), [add an integration for your service](https://support.pagerduty.com/docs/services-and-integrations#section-add-integrations-to-an-existing-service), and then enter the PagerDuty integration key for your new service in the **Routing Key** field. - - The **Client URL** provides a useful link in your PagerDuty notification. Enter any URL that you'd like to use to investigate issues. This URL is sent as the `client_url` property in the PagerDuty trigger event. By default, the **Client URL** is set to your Monitoring & Alerting History page, and the following included in the PagerDuty trigger event: `"client_url": "https://us-west-2-1.aws.cloud2.influxdata.net/orgs//alert-history”` + - The **Client URL** provides a useful link in your PagerDuty notification. Enter any URL that you'd like to use to investigate issues. This URL is sent as the `client_url` property in the PagerDuty trigger event. By default, the **Client URL** is set to your Monitoring & Alerting History page, and the following included in the PagerDuty trigger event: + + ```json + "client_url": "https://cloud2.influxdata.com/orgs//alert-history" + ``` 6. Click **Create Notification Endpoint**. diff --git a/content/influxdb/cloud/organizations/buckets/_index.md b/content/influxdb/cloud/organizations/buckets/_index.md index c0d1dc6cc..d792028b2 100644 --- a/content/influxdb/cloud/organizations/buckets/_index.md +++ b/content/influxdb/cloud/organizations/buckets/_index.md @@ -11,7 +11,8 @@ influxdb/cloud/tags: [buckets] --- A **bucket** is a named location where time series data is stored. -All buckets have a **retention policy**, a duration of time that each data point persists. +All buckets have a **retention period**, a duration of time that each data point persists. +InfluxDB drops all points with timestamps older than the bucket's retention period. A bucket belongs to an organization. The following articles provide information about managing buckets: diff --git a/content/influxdb/cloud/organizations/buckets/create-bucket.md b/content/influxdb/cloud/organizations/buckets/create-bucket.md index d204d915e..e9eca31f7 100644 --- a/content/influxdb/cloud/organizations/buckets/create-bucket.md +++ b/content/influxdb/cloud/organizations/buckets/create-bucket.md @@ -26,7 +26,7 @@ There are two places you can create a bucket in the UI. 3. Enter a **Name** for the bucket. 4. Select when to **Delete Data**: - **Never** to retain data forever. - - **Older than** to choose a specific retention policy. + - **Older than** to choose a specific retention period. 5. Click **Create** to create the bucket. ### Create a bucket in the Data Explorer @@ -39,7 +39,7 @@ There are two places you can create a bucket in the UI. 3. Enter a **Name** for the bucket. 4. Select when to **Delete Data**: - **Never** to retain data forever. - - **Older than** to choose a specific retention policy. + - **Older than** to choose a specific retention period. 5. Click **Create** to create the bucket. ## Create a bucket using the influx CLI diff --git a/content/influxdb/cloud/organizations/buckets/update-bucket.md b/content/influxdb/cloud/organizations/buckets/update-bucket.md index 4ac3c7b28..16abbf896 100644 --- a/content/influxdb/cloud/organizations/buckets/update-bucket.md +++ b/content/influxdb/cloud/organizations/buckets/update-bucket.md @@ -1,7 +1,7 @@ --- title: Update a bucket seotitle: Update a bucket in InfluxDB -description: Update a bucket's name or retention policy in InfluxDB using the InfluxDB UI or the influx CLI. +description: Update a bucket's name or retention period in InfluxDB using the InfluxDB UI or the influx CLI. menu: influxdb_cloud: name: Update a bucket @@ -32,20 +32,20 @@ If you change a bucket name, be sure to update the bucket in the above places as 3. Review the information in the window that appears and click **I understand, let's rename my bucket**. 4. Update the bucket's name and click **Change Bucket Name**. -## Update a bucket's retention policy in the InfluxDB UI +## Update a bucket's retention period in the InfluxDB UI 1. In the navigation menu on the left, select **Data (Load Data)** > **Buckets**. {{< nav-icon "data" >}} - + 2. Click **Settings** next to the bucket you want to update. 3. In the window that appears, under **Delete data**, select a retention period: - **Never**: data in the bucket is retained indefinitely. - **Older Than**: select a predefined retention period from the dropdown menu. - + {{% note %}} -Use the [`influx bucket update` command](#update-a-buckets-retention-policy) to set a custom retention policy. +Use the [`influx bucket update` command](#update-a-buckets-retention-period) to set a custom retention period. {{% /note %}} 5. Click **Save Changes**. @@ -67,9 +67,9 @@ influx bucket update -i -o -n influx bucket update -i 034ad714fdd6f000 -o my-org -n my-new-bucket ``` -##### Update a bucket's retention policy +##### Update a bucket's retention period -Valid retention policy duration units are nanoseconds (`ns`), microseconds (`us` or `µs`), milliseconds (`ms`), seconds (`s`), minutes (`m`), hours (`h`), days (`d`), or weeks (`w`). +Valid retention period duration units are nanoseconds (`ns`), microseconds (`us` or `µs`), milliseconds (`ms`), seconds (`s`), minutes (`m`), hours (`h`), days (`d`), or weeks (`w`). ```sh # Syntax diff --git a/content/influxdb/cloud/process-data/common-tasks/downsample-data.md b/content/influxdb/cloud/process-data/common-tasks/downsample-data.md index 7ac1da7ed..8c3b14441 100644 --- a/content/influxdb/cloud/process-data/common-tasks/downsample-data.md +++ b/content/influxdb/cloud/process-data/common-tasks/downsample-data.md @@ -74,7 +74,7 @@ Once your task is ready, see [Create a task](/influxdb/cloud/process-data/manage ## Things to consider - If there is a chance that data may arrive late, specify an `offset` in your task options long enough to account for late-data. -- If running a task against a bucket with a finite retention policy, do not schedule - tasks to run too closely to the end of the retention policy. +- If running a task against a bucket with a finite retention period, do not schedule + tasks to run too closely to the end of the retention period. Always provide a "cushion" for downsampling tasks to complete before the data - is dropped by the retention policy. + is dropped by the retention period. diff --git a/content/influxdb/cloud/process-data/manage-tasks/run-task.md b/content/influxdb/cloud/process-data/manage-tasks/run-task.md index 670a32211..b2d5f8256 100644 --- a/content/influxdb/cloud/process-data/manage-tasks/run-task.md +++ b/content/influxdb/cloud/process-data/manage-tasks/run-task.md @@ -13,32 +13,4 @@ related: - /influxdb/cloud/reference/cli/influx/task/retry --- -InfluxDB data processing tasks generally run in defined intervals or at a specific time, -however, you can manually run a task from the InfluxDB user interface (UI) or the -`influx` command line interface (CLI). - -## Run a task from the InfluxDB UI -1. In the navigation menu on the left, select **Tasks**. - - {{< nav-icon "tasks" >}} - -2. Hover over the task you want to run and click the **{{< icon "gear" >}}** icon. -3. Select **Run Task**. - -## Run a task with the influx CLI -Use the `influx task run retry` command to run a task. - -{{% note %}} -To run a task from the `influx` CLI, the task must have already run at least once. -{{% /note %}} - -```sh -# List all tasks to find the ID of the task to run -influx task list - -# Use the task ID to list previous runs of the task -influx task run list --task-id=0000000000000000 - -# Use the task ID and run ID to retry a run -influx task run retry --task-id=0000000000000000 --run-id=0000000000000000 -``` +{{< duplicate-oss >}} diff --git a/content/influxdb/cloud/process-data/manage-tasks/task-run-history.md b/content/influxdb/cloud/process-data/manage-tasks/task-run-history.md index 2d4a621f0..582d24589 100644 --- a/content/influxdb/cloud/process-data/manage-tasks/task-run-history.md +++ b/content/influxdb/cloud/process-data/manage-tasks/task-run-history.md @@ -11,36 +11,4 @@ related: - /influxdb/cloud/reference/cli/influx/task/run/find --- -When an InfluxDB task runs, a "run" record is created in the task's history. -Logs associated with each run provide relevant log messages, timestamps, -and the exit status of the run attempt. - -Use the InfluxDB user interface (UI) or the `influx` command line interface (CLI) -to view task run histories and associated logs. - -## View a task's run history in the InfluxDB UI - -1. In the navigation menu on the left, select **Tasks**. - - {{< nav-icon "tasks" >}} - -2. Hover over the task you want to run and click the **{{< icon "gear" >}}** icon. -3. Select **View Task Runs**. - -### View task run logs -To view logs associated with a run, click **View Logs** next to the run in the task's run history. - -## View a task's run history with the influx CLI -Use the `influx task run list` command to view a task's run history. - -```sh -# List all tasks to find the ID of the task to run -influx task list - -# Use the task ID to view the run history of a task -influx task run list --task-id=0000000000000000 -``` - -{{% note %}} -Detailed run logs are not currently available in the `influx` CLI. -{{% /note %}} +{{< duplicate-oss >}} diff --git a/content/influxdb/cloud/query-data/flux/custom-functions/_index.md b/content/influxdb/cloud/query-data/flux/custom-functions/_index.md index 55796dc9d..689a1f73b 100644 --- a/content/influxdb/cloud/query-data/flux/custom-functions/_index.md +++ b/content/influxdb/cloud/query-data/flux/custom-functions/_index.md @@ -1,6 +1,6 @@ --- title: Create custom Flux functions -description: Create your own custom Flux functions to transform and manipulate data. +description: Create your own custom Flux functions to transform and operate on data. list_title: Custom functions influxdb/cloud/tags: [functions, custom, flux] menu: diff --git a/content/influxdb/cloud/query-data/optimize-queries.md b/content/influxdb/cloud/query-data/optimize-queries.md index f550ba7d7..d11c779b9 100644 --- a/content/influxdb/cloud/query-data/optimize-queries.md +++ b/content/influxdb/cloud/query-data/optimize-queries.md @@ -10,69 +10,4 @@ menu: influxdb/cloud/tags: [query] --- -Optimize your Flux queries to reduce their memory and compute (CPU) requirements. - -- [Start queries with pushdown functions](#start-queries-with-pushdown-functions) -- [Avoid short window durations](#avoid-short-window-durations) -- [Use "heavy" functions sparingly](#use-heavy-functions-sparingly) -- [Balance time range and data precision](#balance-time-range-and-data-precision) - -## Start queries with pushdown functions -Some Flux functions can push their data manipulation down to the underlying -data source rather than storing and manipulating data in memory. -These are known as "pushdown" functions and using them correctly can greatly -reduce the amount of memory necessary to run a query. - -#### Pushdown functions -- [range()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/range/) -- [filter()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/filter/) -- [group()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/group/) -- [count()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/aggregates/count/) -- [sum()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/aggregates/sum/) -- [first()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/selectors/first/) -- [last()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/selectors/last/) - -Use pushdown functions at the beginning of your query. -Once a non-pushdown function runs, Flux pulls data into memory and runs all -subsequent operations there. - -##### Pushdown functions in use -```js -from(bucket: "example-bucket") - |> range(start: -1h) // - |> filter(fn: (r) => r.sensor == "abc123") // Pushed to the data source - |> group(columns: ["_field", "host"]) // - - |> aggregateWindow(every: 5m, fn: max) // - |> filter(fn: (r) => r._value >= 90.0) // Run in memory - |> top(n: 10) // -``` - -## Avoid short window durations -Windowing (grouping data based on time intervals) is commonly used to aggregate and downsample data. -Increase performance by avoiding short window durations. -More windows require more compute power to evaluate which window each row should be assigned to. -Reasonable window durations depend on the total time range queried. - -## Use "heavy" functions sparingly -The following functions use more memory or CPU than others. -Consider their necessity in your data processing before using them: - -- [map()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/map/) -- [reduce()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/aggregates/reduce/) -- [window()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/window/) -- [join()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/join/) -- [union()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/union/) -- [pivot()](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/pivot/) - -{{% note %}} -We're continually optimizing Flux and this list may not represent its current state. -{{% /note %}} - -## Balance time range and data precision -To ensure queries are performant, balance the time range and the precision of your data. -For example, if you query data stored every second and request six months worth of data, -results would include ≈15.5 million points per series. Depending on the number of series returned after `filter()`([cardinality](/influxdb/cloud/reference/glossary/#series-cardinality)), this can quickly become many billions of points. -Flux must store these points in memory to generate a response. Use [pushdown functions](#pushdown-functions) to optimize how many points are stored in memory. - -To query data over large periods of time, create a task to [downsample data](/influxdb/cloud/process-data/common-tasks/downsample-data/), and then query the downsampled data instead. +{{< duplicate-oss >}} \ No newline at end of file diff --git a/content/influxdb/cloud/reference/api/influxdb-1x/_index.md b/content/influxdb/cloud/reference/api/influxdb-1x/_index.md index 0f718bf56..f914ddd64 100644 --- a/content/influxdb/cloud/reference/api/influxdb-1x/_index.md +++ b/content/influxdb/cloud/reference/api/influxdb-1x/_index.md @@ -14,4 +14,57 @@ related: - /influxdb/cloud/query-data/influxql --- -{{< duplicate-oss >}} \ No newline at end of file +The InfluxDB v2 API includes InfluxDB 1.x compatibility `/write` and `/query` +endpoints that work with InfluxDB 1.x client libraries and third-party integrations +like [Grafana](https://grafana.com) and others. + +View full v1 compatibility API documentation + +## Authentication +InfluxDB Cloud all query and write requests to be authenticated using +[InfluxDB authentication tokens](/influxdb/cloud/security/tokens/). +Use the following authenication methods: + +- [Token authentication](#token-authentication) +- [Basic authentication](#basic-authentication) + +### Token authentication +Token authentication requires the following credential: + +- **token**: InfluxDB [authentication token](/influxdb/cloud/security/tokens/) + +Use the `Authorization` header with the `Token` scheme to provide your +authentication token to InfluxDB. + +##### Token authentication with authorization header +```sh +# Header syntax +Authorization: Token + +# Header example +Authorization: Token mYSuP3rs3cREtT0k3N +``` + +### Basic authentication +Basic authentication requires the following credentials: + +- **username**: InfluxDB Cloud username +- **password**: InfluxDB Cloud [authentication token](/influxdb/cloud/security/tokens/) + +```sh +# --user syntax +: +``` + +## InfluxQL support + +The compatibility API supports InfluxQL, with the following caveats: + +- The `INTO` clause (e.g. `SELECT ... INTO ...`) is not supported. +- With the exception of [`DELETE`](/{{< latest "influxdb" "v1" >}}/query_language/manage-database/#delete-series-with-delete) and + [`DROP MEASUREMENT`](/{{< latest "influxdb" "v1" >}}/query_language/manage-database/#delete-measurements-with-drop-measurement) queries, which are still allowed, + InfluxQL database management commands are not supported. + +## Compatibility endpoints + +{{< children readmore=true >}} diff --git a/content/influxdb/cloud/reference/cli/influx/task/retry-failed.md b/content/influxdb/cloud/reference/cli/influx/task/retry-failed.md new file mode 100644 index 000000000..cc6068ca2 --- /dev/null +++ b/content/influxdb/cloud/reference/cli/influx/task/retry-failed.md @@ -0,0 +1,11 @@ +--- +title: influx task retry-failed +description: The `influx task retry-failed` command retries failed InfluxDB task runs. +menu: + influxdb_cloud_ref: + name: influx task retry-failed + parent: influx task +weight: 201 +--- + +{{< duplicate-oss >}} diff --git a/content/influxdb/cloud/reference/cli/influx/transpile/_index.md b/content/influxdb/cloud/reference/cli/influx/transpile/_index.md index f42930f93..1b2f39c4c 100644 --- a/content/influxdb/cloud/reference/cli/influx/transpile/_index.md +++ b/content/influxdb/cloud/reference/cli/influx/transpile/_index.md @@ -2,12 +2,6 @@ title: influx transpile description: > The `influx transpile` command transpiles an InfluxQL query to Flux source code. -menu: - influxdb_cloud_ref: - name: influx transpile - parent: influx -weight: 101 -influxdb/cloud/tags: [influxql, flux] related: - /influxdb/cloud/reference/cli/influx/#provide-required-authentication-credentials, influx CLI—Provide required authentication credentials - /influxdb/cloud/reference/cli/influx/#flag-patterns-and-conventions, influx CLI—Flag patterns and conventions diff --git a/content/influxdb/cloud/reference/flux/stdlib/experimental/geo/_index.md b/content/influxdb/cloud/reference/flux/stdlib/experimental/geo/_index.md index e04b3987c..625786a94 100644 --- a/content/influxdb/cloud/reference/flux/stdlib/experimental/geo/_index.md +++ b/content/influxdb/cloud/reference/flux/stdlib/experimental/geo/_index.md @@ -161,7 +161,7 @@ Define a custom polygon region using a record containing the following propertie ``` ## GIS geometry definitions -Many functions in the Geo package manipulate data based on geographic information system (GIS) data. +Many functions in the Geo package operate on data using geographic information system (GIS) data. Define GIS geometry using the following: - Any [region type](#region-definitions) _(typically [point](#point))_ diff --git a/content/influxdb/cloud/security/tokens/_index.md b/content/influxdb/cloud/security/tokens/_index.md index 50cdd7ea7..b1e2c6aa3 100644 --- a/content/influxdb/cloud/security/tokens/_index.md +++ b/content/influxdb/cloud/security/tokens/_index.md @@ -12,4 +12,20 @@ menu: weight: 103 --- -{{< duplicate-oss >}} +InfluxDB **authentication tokens** ensure secure interaction between users and data. +A token belongs to an organization and identifies InfluxDB permissions within the organization. + +Learn how to create, view, update, or delete an authentication token. + +## Authentication token types + +- [All-Access token](#all-access-token) +- [Read/Write token](#readwrite-token) + +#### All-Access token +Grants full read and write access to all resources in an organization. + +#### Read/Write token +Grants read access, write access, or both to specific buckets in an organization. + +{{< children hlevel="h2" >}} diff --git a/content/influxdb/cloud/tools/grafana.md b/content/influxdb/cloud/tools/grafana.md index ae0597f47..ac43c19ef 100644 --- a/content/influxdb/cloud/tools/grafana.md +++ b/content/influxdb/cloud/tools/grafana.md @@ -90,10 +90,10 @@ To query InfluxDB Cloud from Grafana using InfluxQL: ```sh influx config create \ + --config-name example-config-name \ --host-url https://cloud2.influxdata.com \ --org example-org \ - --token My5uP3rSeCr37t0k3n \ - --name example-config-name + --token My5uP3rSeCr37t0k3n ``` For more information about `influx` CLI configurations, diff --git a/content/influxdb/cloud/upgrade/_index.md b/content/influxdb/cloud/upgrade/_index.md new file mode 100644 index 000000000..c4af6957a --- /dev/null +++ b/content/influxdb/cloud/upgrade/_index.md @@ -0,0 +1,13 @@ +--- +title: Upgrade to InfluxDB Cloud +description: > + Upgrade to InfluxDB Cloud from InfluxDB OSS 1.x and 2.x and InfluxDB Enterprise 1.x. +menu: + influxdb_cloud: + name: Upgrade to Cloud +weight: 2 +--- + +Upgrade to InfluxDB Cloud from InfluxDB 1.x and 2.x: + +{{< children >}} diff --git a/content/influxdb/cloud/upgrade/v1-to-cloud/_index.md b/content/influxdb/cloud/upgrade/v1-to-cloud/_index.md new file mode 100644 index 000000000..fdac4dea9 --- /dev/null +++ b/content/influxdb/cloud/upgrade/v1-to-cloud/_index.md @@ -0,0 +1,268 @@ +--- +title: Upgrade from InfluxDB 1.x to InfluxDB Cloud +description: > + To upgrade from InfluxDB 1.x to InfluxDB Cloud, migrate data, and then create + database and retention policy (DBRP) mappings. +menu: + influxdb_cloud: + parent: Upgrade to Cloud + name: 1.x to Cloud +weight: 11 +related: + - /influxdb/cloud/upgrade/v1-to-cloud/migrate-cqs/ +--- + +To upgrade from **InfluxDB OSS 1.x** to **InfluxDB Cloud**: + +1. [Create an InfluxDB Cloud account](#create-an-influxdb-cloud-account) +2. [Create an All-Access authentication token](#create-an-all-access-authentication-token) +3. [Download and install the `influx` CLI](#download-and-install-the-influx-cli) +4. [Create DBRP mappings](#create-dbrp-mappings) +5. [Dual write to InfluxDB 1.x and InfluxDB Cloud](#dual-write-to-influxdb-1x-and-influxdb-cloud) +6. [Migrate time series data](#migrate-time-series-data) +7. [Migrate continuous queries](#migrate-continuous-queries) +8. [Collaborate with other users](#collaborate-with-other-users) + +## Create an InfluxDB Cloud account +Do one of the following to create an InfluxDB Cloud account: + +- [Subscribe through InfluxData](/influxdb/cloud/get-started/#subscribe-through-influxdata) and + [start for free](/influxdb/cloud/get-started/#start-for-free). +- [Subscribe through your cloud provider](/influxdb/cloud/get-started/#subscribe-through-a-cloud-provider). + +## Create an All-Access authentication token +InfluxDB Cloud requires all requests to be authenticated with **token authentication**. +Create an **All-Access** token in your InfluxDB Cloud user interface (UI) to use +for the upgrade process. + +1. Click **Data (Load Data) > Tokens** in the left navigation bar. + + {{< nav-icon "data" >}} +2. Click **{{< icon "plus" >}} Generate**, and then select **All-Access Token**. +3. Enter a description for the token, and then click **{{< icon "check" >}} Save**. + +_For more information about managing tokens and token types, see [Manage tokens](/influxdb/cloud/security/tokens/)._ + +## Download and install the influx CLI +1. Visit the [InfluxDB downloads page](https://portal.influxdata.com/downloads/) + and download the **InfluxDB Cloud CLI** (`influx`). +2. Place the `influx` binary in your system `PATH` or execute the CLI commands from + the directory where the `influx` CLI exists. + +3. [Create a CLI connection configuration](/influxdb/cloud/reference/cli/influx/#provide-required-authentication-credentials) + for your InfluxDB Cloud account. + Include the following flags: + + - **-\-config-name**: + Unique name for the connection configuration. + - **-\-host-url**: + [InfluxDB Cloud region URL](/influxdb/cloud/reference/regions/). + - **-\-org**: + InfluxDB Cloud organization name. + The default organization name is the email address associated with your account. + - **-\-token**: + InfluxDB Cloud **All-Access** token. + + ```sh + influx config create \ + --config-name cloud \ + --host-url https://cloud2.influxdata.com \ + --org your.email@example.com \ + --token mY5uP3rS3cRe7Cl0uDt0K3n \ + --active + ``` + +{{% note %}} +#### Required InfluxDB Cloud credentials +All `influx` CLI examples below assume the required InfluxDB Cloud **host**, +**organization**, and **authentication token** credentials are provided by your +[`influx` CLI configuration](/influxdb/cloud/reference/cli/influx/#provide-required-authentication-credentials). +{{% /note %}} + +## Create DBRP mappings +InfluxDB database and retention policy (DBRP) mappings associate database and +retention policy combinations with InfluxDB cloud [buckets](/influxdb/cloud/reference/glossary/#bucket). +These mappings allow InfluxDB 1.x clients to query and write to +InfluxDB Cloud buckets while using the 1.x DBRP convention. + +_For more information about DBRP mapping, see +[Database and retention policy mapping](/influxdb/cloud/reference/api/influxdb-1x/dbrp/)._ + +**To map a DBRP combination to an InfluxDB Cloud bucket** + +1. **Create a bucket** + [Create an InfluxDB Cloud bucket](/influxdb/cloud/organizations/buckets/create-bucket/). + We recommend creating a bucket for each unique 1.x database and retention + policy combination using the following naming convention: + + ```sh + # Naming convention + db-name/rp-name + + # Example + telegraf/autogen + ``` + +2. **Create a DBRP mapping** + Use the [`influx v1 dbrp create` command](/influxdb/cloud/reference/cli/influx/v1/dbrp/create/) + to create a DBRP mapping. + Provide the following: + + - database name + - retention policy name _(not retention period)_ + - [bucket ID](/influxdb/cloud/organizations/buckets/view-buckets/) + - _(optional)_ `--default` flag if you want the retention policy to be the default retention + policy for the specified database + + {{< code-tabs-wrapper >}} + {{% code-tabs %}} +[DB with one RP](#) +[DB with multiple RPs](#) + {{% /code-tabs %}} + {{% code-tab-content %}} +```sh +influx v1 dbrp create \ + --db example-db \ + --rp example-rp \ + --bucket-id 00xX00o0X001 \ + --default +``` + {{% /code-tab-content %}} + {{% code-tab-content %}} +```sh +# Create telegraf/autogen DBRP mapping with autogen +# as the default RP for the telegraf DB + +influx v1 dbrp create \ + --db telegraf \ + --rp autogen \ + --bucket-id 00xX00o0X001 \ + --default + +# Create telegraf/downsampled-daily DBRP mapping that +# writes to a different bucket + +influx v1 dbrp create \ + --db telegraf \ + --rp downsampled-daily \ + --bucket-id 00xX00o0X002 +``` + {{% /code-tab-content %}} + {{< /code-tabs-wrapper >}} + {{% caption %}} +See [Required InfluxDB Cloud credentials](#required-influxdb-cloud-credentials) + {{% /caption %}} + +## Dual write to InfluxDB 1.x and InfluxDB Cloud +Update external clients to write to your InfluxDB Cloud instance. +**We recommend writing data to both InfluxDB 1.x and InfluxDB Cloud until you +finish [migrating your existing time series data](#migrate-time-series-data)**. + +Configure external clients with your InfluxDB Cloud **host**, **organization**, +and **authentication token**. + +### Update Telegraf configurations +If using Telegraf to collect and write metrics to InfluxDB 1.x, update your +Telegraf configuration to write to both InfluxDB 1.x and InfluxDB Cloud: + +1. Update your Telegraf configuration with a `influxdb_v2` output to write to + your InfluxDB Cloud instance. + + ##### Example dual-write Telegraf configuration + ```toml + # Write metrics to InfluxDB 1.x + [[outputs.influxdb]] + urls = ["https://localhost:8086"] + database = "example-db" + retention_policy = "example-rp" + + # Write metrics to InfluxDB Cloud + [[outputs.influxdb_v2]] + urls = ["https://cloud2.influxdata.com"] + token = "$INFLUX_TOKEN" + organization = "your.email@example.com" + bucket = "example-db/example-rp" + ``` + +2. Add the `INFLUX_TOKEN` environment variable to your Telegraf environment(s) + and set the value to your InfluxDB Cloud authentication token. + +3. Restart Telegraf with the updated configuration and begin writing to both + InfluxDB 1.x and InfluxDB Cloud. + +## Migrate time series data +To migrate time series data from your InfluxDB 1.x instance to InfluxDB Cloud: + +1. Use the **InfluxDB 1.x** [`influx_inspect export` command](/{{< latest "influxdb" "v1" >}}/tools/influx_inspect/#export) + to export time series data as line protocol. + Include the `-lponly` flag to exclude comments and the data definition + language (DDL) from the output file. + + _We recommend exporting each DBRP combination separately to easily write data + to a corresponding InfluxDB Cloud bucket._ + + ```sh + # Syntax + influx_inspect export \ + -database \ + -retention \ + -out \ + -lponly + + # Example + influx_inspect export \ + -database example-db \ + -retention example-rp \ + -out /path/to/example-db_example-rp.lp \ + -lponly + ``` + +2. Use the **InfluxDB Cloud** [`influx write` command](/influxdb/cloud/reference/cli/influx/write/) + to write the exported line protocol to InfluxDB Cloud. + + ```sh + # Syntax + influx write \ + --bucket \ + --file + + # Example + influx write \ + --bucket example-db/example-rp \ + --file /path/to/example-db_example-rp.lp + ``` + {{% caption %}} +See [Required InfluxDB Cloud credentials](#required-influxdb-cloud-credentials) + {{% /caption %}} + +3. Repeat steps 1-2 for each bucket. + +{{% note %}} +#### InfluxDB Cloud write rate limits +Write requests are subject to rate limits associated with your +[InfluxDB Cloud pricing plan](/influxdb/cloud/account-management/pricing-plans/). +If your exported line protocol size potentially exceeds your rate limits, +include the `--rate-limit` flag with `influx write` to rate limit written data. + +```sh +influx write \ + --bucket example-bucket \ + --file /path/to/example-db_example-rp.lp \ + --rate-limit "5 MB / 5 min" +``` +{{% caption %}} +See [Required InfluxDB Cloud credentials](#required-influxdb-cloud-credentials) +{{% /caption %}} + +To minimize network bandwidth usage, we recommend using gzip to compress exported line protocol. +However, when writing to InfluxDB Cloud, **Data In** and **Ingest batch size** +rate limits track the payload size of the **uncompressed** line protocol. +{{% /note %}} + +## Migrate continuous queries +For information about migrating InfluxDB 1.x continuous queries to InfluxDB Cloud tasks, +see [Migrate continuous queries to tasks](/influxdb/cloud/upgrade/v1-to-cloud/migrate-cqs/). + +## Collaborate with other users +To collaborate with other users in your InfluxDB Cloud organization, +[invite users to join your organization](/influxdb/cloud/account-management/multi-user/invite-user/). diff --git a/content/influxdb/cloud/upgrade/v1-to-cloud/migrate-cqs.md b/content/influxdb/cloud/upgrade/v1-to-cloud/migrate-cqs.md new file mode 100644 index 000000000..85eee4bdd --- /dev/null +++ b/content/influxdb/cloud/upgrade/v1-to-cloud/migrate-cqs.md @@ -0,0 +1,370 @@ +--- +title: Migrate continuous queries to tasks +description: > + InfluxDB Cloud replaces 1.x continuous queries (CQs) with **InfluxDB tasks**. + To migrate continuous queries to InfluxDB Cloud, convert InfluxDB 1.x CQs into + Flux and create new InfluxDB Cloud tasks. +menu: + influxdb_cloud: + parent: 1.x to Cloud + name: Migrate CQs +weight: 102 +related: + - /influxdb/cloud/query-data/get-started/ + - /influxdb/cloud/query-data/flux/ + - /influxdb/cloud/process-data/ + - /influxdb/cloud/process-data/common-tasks/ + - /influxdb/cloud/reference/flux/flux-vs-influxql/ +--- + +InfluxDB Cloud replaces 1.x continuous queries (CQs) with **InfluxDB tasks**. +To migrate continuous queries to InfluxDB Cloud tasks, do the following: + +1. [Output all InfluxDB 1.x continuous queries](#output-all-influxdb-1x-continuous-queries) +2. [Convert continuous queries to Flux queries](#convert-continuous-queries-to-flux-queries) +3. [Create new InfluxDB tasks](#create-new-influxdb-tasks) + +## Output all InfluxDB 1.x continuous queries + +1. Use the **InfluxDB 1.x `influx` interactive shell** to run `SHOW CONTINUOUS QUERIES`: + + {{< keep-url >}} + ```sh + $ influx + Connected to http://localhost:8086 version 1.8.5 + InfluxDB shell version: 1.8.5 + > SHOW CONTINUOUS QUERIES + ``` + +2. Copy and save the displayed continuous queries. + +## Convert continuous queries to Flux queries + +To migrate InfluxDB 1.x continuous queries to InfluxDB Cloud tasks, convert the InfluxQL query syntax to Flux. +The majority of continuous queries are simple downsampling queries and can be converted quickly +using the [`aggregateWindow()` function](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/aggregates/aggregatewindow/). +For example: + +##### Example continuous query +```sql +CREATE CONTINUOUS QUERY "downsample-daily" ON "my-db" +BEGIN + SELECT mean("example-field") + INTO "my-db"."example-rp"."average-example-measurement" + FROM "example-measurement" + GROUP BY time(1h) +END +``` + +##### Equivalent Flux task +```js +option task = { + name: "downsample-daily", + every: 1d +} + +from(bucket: "my-db/") + |> range(start: -task.every) + |> filter(fn: (r) => r._measurement == "example-measurement") + |> filter(fn: (r) => r._field == "example-field") + |> aggregateWindow(every: 1h, fn: mean) + |> set(key: "_measurement", value: "average-example-measurement") + |> to( + org: "example-org", + bucket: "my-db/example-rp" + ) +``` + +### Convert InfluxQL continuous queries to Flux +Review the following statements and clauses to see how to convert your CQs to Flux: + +- [ON clause](#on-clause) +- [SELECT statement](#select-statement) +- [INTO clause](#into-clause) +- [FROM clause](#from-clause) +- [AS clause](#as-clause) +- [WHERE clause](#where-clause) +- [GROUP BY clause](#group-by-clause) +- [RESAMPLE clause](#resample-clause) + +#### ON clause +The `ON` clause defines the database to query. +In InfluxDB Cloud, database and retention policy combinations are mapped to specific buckets +(for more information, see [Database and retention policy mapping](/influxdb/cloud/reference/api/influxdb-1x/dbrp/)). + +Use the [`from()` function](/influxdb/cloud/reference/flux/stdlib/built-in/inputs/from) +to specify the bucket to query: + +###### InfluxQL +```sql +CREATE CONTINUOUS QUERY "downsample-daily" ON "my-db" +-- ... +``` + +###### Flux +```js +from(bucket: "my-db/") +// ... +``` + +#### SELECT statement +The `SELECT` statement queries data by field, tag, and time from a specific measurement. +`SELECT` statements can take many different forms and converting them to Flux depends +on your use case. For information about Flux and InfluxQL function parity, see +[Flux vs InfluxQL](/influxdb/cloud/reference/flux/flux-vs-influxql/#influxql-and-flux-parity). +See [other resources available to help](#other-helpful-resources). + +#### INTO clause +The `INTO` clause defines the measurement to write results to. +`INTO` also supports fully-qualified measurements that include the database and retention policy. +In InfluxDB Cloud, database and retention policy combinations are mapped to specific buckets +(for more information, see [Database and retention policy mapping](/influxdb/cloud/reference/api/influxdb-1x/dbrp/)). + +To write to a measurement different than the measurement queried, use +[`set()`](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/set/) or +[`map()`](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/map/) +to change the measurement name. +Use the `to()` function to specify the bucket to write results to. + +###### InfluxQL +```sql +-- ... +INTO "example-db"."example-rp"."example-measurement" +-- ... +``` + +###### Flux +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[set()](#) +[map()](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```js +// ... + |> set(key: "_measurement", value: "example-measurement") + |> to(bucket: "example-db/example-rp") +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```js +// ... + |> map(fn: (r) => ({ r with _measurement: "example-measurement"})) + |> to(bucket: "example-db/example-rp") +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +##### Write pivoted data to InfluxDB +InfluxDB 1.x query results include a column for each field. +InfluxDB Cloud does not do this by default, but it is possible with +[`pivot()`](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/pivot) +or [`schema.fieldsAsCols()`](/influxdb/cloud/reference/flux/stdlib/influxdb-schema/fieldsascols/). + +If you use `to()` to write _pivoted data_ back to InfluxDB Cloud, each field column is stored as a tag. +To write pivoted fields back to InfluxDB as fields, import the `experimental` package +and use the [`experimental.to()` function](/influxdb/cloud/reference/flux/stdlib/experimental/to/). + +###### InfluxQL +```sql +CREATE CONTINUOUS QUERY "downsample-daily" ON "my-db" +BEGIN + SELECT mean("example-field-1"), mean("example-field-2") + INTO "example-db"."example-rp"."example-measurement" + FROM "example-measurement" + GROUP BY time(1h) +END +``` + +###### Flux +```js +// ... + +from(bucket: "my-db/") + |> range(start: -task.every) + |> filter(fn: (r) => r._measurement == "example-measurement") + |> filter(fn: (r) => r._field == "example-field-1" or r._field == "example-field-2") + |> aggregateWindow(every: task.every, fn: mean) + |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value") + |> experimental.to(bucket: "example-db/example-rp") +``` + +#### FROM clause +The from clause defines the measurement to query. +Use the [`filter()` function](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/filter/) +to specify the measurement to query. + +###### InfluxQL +```sql +-- ... +FROM "example-measurement" +-- ... +``` + +###### Flux +```js +// ... + |> filter(fn: (r) => r._measurement == "example-measurement") +``` + +#### AS clause +The `AS` clause changes the name of the field when writing data back to InfluxDB. +Use [`set()`](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/set/) +or [`map()`](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/map/) +to change the field name. + +###### InfluxQL +```sql +-- ... +AS newfield +-- ... +``` + +###### Flux +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[set()](#) +[map()](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```js +// ... + |> set(key: "_field", value: "newfield") +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```js +// ... + |> map(fn: (r) => ({ r with _field: "newfield"})) +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +#### WHERE clause +The `WHERE` clause uses predicate logic to filter results based on fields, tags, or timestamps. +Use the [`filter()` function](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/filter/) +and Flux [comparison operators](/influxdb/cloud/reference/flux/language/operators/#comparison-operators) +to filter results based on fields and tags. +Use the [`range()` function](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/range/) to filter results based on timestamps. + +###### InfluxQL +```sql +-- ... +WHERE "example-tag" = "foo" AND time > now() - 7d +``` + +###### Flux +```js +// ... + |> range(start: -7d) + |> filter(fn: (r) => r["example-tag"] == "foo") +``` + +#### GROUP BY clause +The InfluxQL `GROUP BY` clause groups data by specific tags or by time (typically to calculate an aggregate value for windows of time). + +##### Group by tags +Use the [`group()` function](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/group/) +to modify the [group key](/influxdb/cloud/reference/glossary/#group-key) and change how data is grouped. + +###### InfluxQL +```sql +-- ... +GROUP BY "location" +``` + +###### Flux +```js +// ... + |> group(columns: ["location"]) +``` + +##### Group by time +Use the [`aggregateWindow()` function](/influxdb/cloud/reference/flux/stdlib/built-in/transformations/aggregates/aggregatewindow/) +to group data into time windows and perform an aggregation on each window. +In CQs, the interval specified in the `GROUP BY time()` clause determines the CQ execution interval. +Use the `GROUP BY time()` interval to set the `every` task option. + +###### InfluxQL +```sql +-- ... +SELECT MEAN("example-field") +FROM "example-measurement" +GROUP BY time(1h) +``` + +###### Flux +```js +option task = { + name: "task-name", + every: 1h +} + +// ... + |> filter(fn: (r) => + r._measurement == "example-measurement" and + r._field == "example-field" + ) + |> aggregateWindow(every: task.every, fn: mean) +``` + +#### RESAMPLE clause + +The CQ `RESAMPLE` clause uses data from the last specified duration to calculate a new aggregate point. +The `EVERY` interval in `RESAMPLE` defines how often the CQ runs. +The `FOR` interval defines the total time range queried by the CQ. + +To accomplish this same functionality in a Flux task, set the `start` parameter +in the `range()` function to the negative `FOR` duration. +Define the task execution interval in the `task` options. +For example: + +###### InfluxQL +```sql +CREATE CONTINUOUS QUERY "resample-example" ON "my-db" +RESAMPLE EVERY 1m FOR 30m +BEGIN + SELECT exponential_moving_average(mean("example-field"), 30) + INTO "resample-average-example-measurement" + FROM "example-measurement" + WHERE region = 'example-region' + GROUP BY time(1m) +END +``` + +###### Flux +```js +option task = { + name: "resample-example", + every: 1m +} + +from(bucket: "my-db/") + |> range(start: -30m) + |> filter(fn: (r) => + r._measurement == "example-measurement" and + r._field == "example-field" and + r.region == "example-region" + ) + |> aggregateWindow(every: 1m, fn: mean) + |> exponentialMovingAverage(n: 30) + |> set(key: "_measurement", value: "resample-average-example-measurement") + |> to(bucket: "my-db/") +``` + +## Create new InfluxDB tasks +After converting your continuous query to Flux, use the Flux query to +[create a new task](/influxdb/cloud/process-data/manage-tasks/create-task/). + +## Other helpful resources +The following resources are available and may be helpful when converting +continuous queries to Flux tasks. + +##### Documentation +- [Get started with Flux](/influxdb/cloud/query-data/get-started/) +- [Query data with Flux](/influxdb/cloud/query-data/flux/) +- [Common tasks](/influxdb/cloud/process-data/common-tasks/#downsample-data-with-influxdb) + +##### Community +- Post in the [InfluxData Community](https://community.influxdata.com/) +- Ask in the [InfluxDB Community Slack](https://influxdata.com/slack) diff --git a/content/influxdb/cloud/upgrade/v2-to-cloud.md b/content/influxdb/cloud/upgrade/v2-to-cloud.md new file mode 100644 index 000000000..3ff6149ae --- /dev/null +++ b/content/influxdb/cloud/upgrade/v2-to-cloud.md @@ -0,0 +1,368 @@ +--- +title: Upgrade from InfluxDB OSS 2.x to InfluxDB Cloud +description: > + To upgrade from Influx 2.x to InfluxDB Cloud, create a new InfluxDB Cloud account, + migrate resources, time series data, and more. +menu: + influxdb_cloud: + name: 2.x to Cloud + parent: Upgrade to Cloud +weight: 11 +--- + +To upgrade from **InfluxDB OSS 2.x** to **InfluxDB Cloud**: + +1. [Create an InfluxDB Cloud account](#create-an-influxdb-cloud-account) +2. [Create an All-Access authentication token](#create-an-all-access-authentication-token) +3. [Set up influx CLI connection configurations](#set-up-influx-cli-connection-configurations) +4. [Use templates to migrate InfluxDB resources](#use-templates-to-migrate-influxdb-resources) +5. [Migrate DBRP mappings](#migrate-dbrp-mappings) +6. [Dual write to InfluxDB 2.x and InfluxDB Cloud](#dual-write-to-influxdb-2x-and-influxdb-cloud) +7. [Migrate time series data](#migrate-time-series-data) +8. [Collaborate with other users](#collaborate-with-other-users) + +{{% note %}} +#### Consider when upgrading +- InfluxDB Cloud requires token authentication, and you must create all new authentication tokens. +- InfluxDB Cloud does not support: + - Multiple [organizations](http://localhost:1313/influxdb/cloud/reference/glossary/#organization) per account. + Upgrade a single InfluxDB OSS 2.x organization to an InfluxDB Cloud organization. + To upgrade multiple organizations, create a separate InfluxDB Cloud account for each organization. + - [InfluxDB scrapers](/{{< latest "influxdb" >}}/write-data/no-code/scrape-data/). + To scrape Prometheus-formatted metrics, use the [Telegraf Prometheus input plugin](/{{< latest "telegraf" >}}/plugins/#prometheus). + - [1.x compatible authorizations](/{{< latest "influxdb" >}}/reference/api/influxdb-1x/#authentication). +{{% /note %}} + +## Create an InfluxDB Cloud account +Do one of the following to create an InfluxDB Cloud account: + +- [Subscribe through InfluxData](/influxdb/cloud/get-started/#subscribe-through-influxdata) and + [start for free](/influxdb/cloud/get-started/#start-for-free). +- [Subscribe through your cloud provider](/influxdb/cloud/get-started/#subscribe-through-a-cloud-provider). + +## Create an All-Access authentication token +InfluxDB authentication tokens are unique to each organization. +Create an **All-Access** token in your InfluxDB Cloud user interface (UI) to use +for the upgrade process. + +1. Click **Data (Load Data) > Tokens** in the left navigation bar. + + {{< nav-icon "data" >}} +2. Click **{{< icon "plus" >}} Generate**, and then select **All-Access Token**. +3. Enter a description for the token, and then click **{{< icon "check" >}} Save**. + +{{% note %}} +If you've created other tokens in your InfluxDB 2.x instance for external libraries or +integrations, create corresponding tokens for each in your InfluxDB Cloud instance. +You cannot migrate tokens from InfluxDB 2.x to InfluxDB Cloud. +{{% /note %}} + +_For more information about managing tokens and token types, see [Manage tokens](/influxdb/cloud/security/tokens/)._ + +## Set up influx CLI connection configurations +The `influx` command line interface (CLI) lets you create connection configurations +that automatically provides **host**, **organization**, and **authentication token** +credentials to CLI commands. +Use the `influx` CLI packaged with InfluxDB 2.x and the +[`influx config create` command](/influxdb/cloud/reference/cli/influx/config/create/) +to set up the connection configurations for both your InfluxDB Cloud instance and +your InfluxDB 2.x instance. + +Include the following flags for each configuration: + +- **-\-config-name**: + Unique name for the connection configuration. + The examples below use `cloud` and `oss` respectively. +- **-\-host-url**: + [InfluxDB Cloud region URL](/influxdb/cloud/reference/regions/) or + [InfluxDB 2.x URL](/{{< latest "influxdb" >}}/reference/urls/). +- **-\-org**: + InfluxDB organization name. + The default organization name in InfluxDB Cloud is the email address associated with your account. +- **-\-token**: Authentication token to use to connect to InfluxDB. + Provide an **All-Access** token (or an [Operator token](/{{< latest "influxdb" >}}/security/tokens/#operator-token) for 2.x). + +##### Create an InfluxDB Cloud connection configuration +```sh +# Example cloud connection configuration +influx config create \ + --config-name cloud \ + --host-url https://cloud2.influxdata.com \ + --org your.email@example.com \ + --token mY5uP3rS3cRe7Cl0uDt0K3n +``` + +##### Create an InfluxDB 2.x connection configuration +{{< keep-url >}} +```sh +# Example 2.x connection configuration +influx config create \ + --config-name oss \ + --host-url http://localhost:8086 \ + --org example-org \ + --token mY5uP3rS3cRe70S5t0K3n +``` + +## Use templates to migrate InfluxDB resources +[InfluxDB templates](/influxdb/cloud/influxdb-templates/) let you export InfluxDB +[resources](/influxdb/cloud/influxdb-templates/#template-resources) such as buckets, +dashboards, labels, tasks, and more and import them into another InfluxDB instance. +Export resources from your **InfluxDB 2.x** instance and migrate them to +your **InfluxDB Cloud** instance. + +{{% note %}} +#### InfluxDB Cloud Free Plan resource limits +If upgrading to an [InfluxDB Cloud Free Plan](/influxdb/cloud/account-management/pricing-plans/#free-plan), +you are only able to create a limited number of resources. +If your exported template exceeds these limits, the resource migration will fail. +{{% /note %}} + +- **To migrate _all resources_ from an InfluxDB 2.x organization to an InfluxDB Cloud organization**: + Use the [`influx export all` command](/influxdb/cloud/reference/cli/influx/export/all) + and pipe the output into the [`influx apply` command](/influxdb/cloud/reference/cli/influx/apply/). + Use the `--active-config` flag with each command to specify which connection configuration to use: + + ```sh + influx export all --active-config oss | influx apply --active-config cloud + ``` + +- **To migrate _specific resources_ from an InfluxDB 2.x organization to an InfluxDB Cloud organization**: + Use the [`influx export` command](/influxdb/cloud/reference/cli/influx/export/) + with lists of specific resources to export or the [`influx export all` command](/influxdb/cloud/reference/cli/influx/export/all) + **with filters**. Pipe the output into the [`influx apply` command](/influxdb/cloud/reference/cli/influx/apply/). + Use the `--active-config` flag with each command to specify which connection configuration to use: + + {{< code-tabs-wrapper >}} +{{% code-tabs %}} +[Migrate specific resources](#) +[Migrate all with filters](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```sh +influx export \ + --active-config oss \ + --buckets 0Xx0oox00XXoxxoo1,0Xx0oox00XXoxxoo2 \ + --labels o0x0oox0Xxoxx001,o0x0oox0Xxoxx002 \ + --dashboards 0XxXooXoo0xooXo0X1,0XxXooXoo0xooXo0X2 | \ +influx apply --active-config cloud +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sh +influx export all \ + --active-config oss \ + --filter=resourceKind=Bucket \ + --filter=resourceKind=Dashboard \ + --filter=labelName=Foo | \ +influx apply --active-config cloud +``` +{{% /code-tab-content %}} + {{< /code-tabs-wrapper >}} + + For more export command examples, see the [`influx export`](/influxdb/cloud/reference/cli/influx/export/#examples) + and [`influx export all`](/influxdb/cloud/reference/cli/influx/export/all#examples) documentation. + + {{% note %}} +#### Update hardcoded InfluxDB URLs +If any of your migrated resources contain hardcoded InfluxDB URLs (`http://localhost:8086`), do one of the following to update these URLs to your [InfluxDB Cloud region URL](/influxdb/cloud/reference/regions/): + +- Migrate your resources to InfluxDB Cloud, and then update URLs in the InfluxDB Cloud UI. +- Save your template to a file, update URLs in the file, and then apply the template to your InfluxDB Cloud instance. + {{% /note %}} + +## Migrate DBRP mappings +InfluxDB database and retention policy (DBRP) mappings let you query InfluxDB Cloud +buckets with InfluxQL and the InfluxDB 1.x DBRP convention. +**If you have DBRP mappings in your InfluxDB 2.x instance**, migrate them +to your InfluxDB Cloud instance. + +{{< expand-wrapper >}} +{{% expand "Migrate DBRP mappings to InfluxDB Cloud"%}} +1. Use the [`influx v1 dbrp list` command](/influxdb/cloud/reference/cli/influx/influx/v1/dbrp/list/) + to view the list of DBRP mappings in your **InfluxDB 2.x** instance. + + ```sh + influx v1 dbrp list --active-config oss + ``` + +2. Use the [`influx bucket list` command](/influxdb/cloud/reference/cli/influx/bucket/list/) + to view a list of your **InfluxDB Cloud** buckets and their IDs. + + ```sh + influx bucket list --active-config cloud + ``` + +3. Use the [`influx v1 dbrp create` command](/influxdb/cloud/reference/cli/influx/influx/v1/dbrp/create/) + to create DBRP mappings in your **InfluxDB Cloud** instance that map DBRP + combinations to the appropriate bucket ID. + + ```sh + influx v1 dbrp create \ + --active-config cloud \ + --bucket-id 12ab34cd56ef \ + --database example-db \ + --rp example-rp + ``` +{{% /expand %}} +{{< /expand-wrapper >}} + +## Dual write to InfluxDB 2.x and InfluxDB Cloud +Update external clients to write to your InfluxDB Cloud instance. +**We recommend writing data to both InfluxDB 2.x and InfluxDB Cloud until you +finish [migrating your existing time series data](#migrate-time-series-data)**. + +Configure external clients with your InfluxDB Cloud **host**, **organization**, +and **authentication token**. + +### Update Telegraf configurations +If using Telegraf configurations migrated to or stored in InfluxDB Cloud, +[update your Telegraf configurations](/influxdb/cloud/telegraf-configs/update/) +**in InfluxDB Cloud** to write to both InfluxDB 2.x and InfluxDB Cloud: + +1. [Update your Telegraf configuration](/influxdb/cloud/telegraf-configs/update/) + with a second `influxdb_v2` output to write to your InfluxDB Cloud instance. + + ##### Example dual-write Telegraf configuration + ```toml + # Write metrics to InfluxDB 2.x + [[outputs.influxdb_v2]] + urls = ["https://localhost:8086"] + token = "$INFLUX_TOKEN" + organization = "example-org" + bucket = "example-bucket" + + # Write metrics to InfluxDB Cloud + [[outputs.influxdb_v2]] + urls = ["https://cloud2.influxdata.com"] + token = "$INFLUX_CLOUD_TOKEN" + organization = "your.email@example.com" + bucket = "example-bucket" + ``` + +2. Add the following environment variables to your Telegraf environment(s): + + - `INFLUX_TOKEN`: InfluxDB 2.x authentication token + - `INFLUX_CLOUD_TOKEN`: InfluxDB Cloud authentication token + +3. Use the command provided in your [Telegraf Setup Instructions](/influxdb/cloud/telegraf-configs/#use-influxdb-telegraf-configurations) + to restart Telegraf with the updated configuration and begin writing to both + InfluxDB 2.x and InfluxDB Cloud. + +## Migrate time series data +To migrate your time series data from your InfluxDB 2.x instance to your +InfluxDB Cloud instance, do the following: + +1. Use the [`influx bucket list` command](/influxdb/cloud/reference/cli/influx/bucket/list/) + to view a list of your **InfluxDB 2.x** buckets and their IDs. + + ```sh + influx bucket list --active-config oss + ``` + +2. Use the [`influxd inspect export-lp` command](/influxdb/v2.0/reference/cli/influxd/inspect/export-lp/) + to export data from a bucket in your **InfluxDB 2.x** instance as line protocol. + Include the following flags: + + - **-\-bucket-id**: Bucket ID to export + - **-\-engine-path**: InfluxDB [engine path](/{{< latest "influxdb" >}}/reference/internals/file-system-layout/#engine-path) + - **-\-output-path**: Output file path + - **-\-compress**: _(Optional)_ Gzip the exported line protocol + - **-\-start**: _(Optional)_ Earliest timestamp to export + - **-\-end**: _(Optional)_ Latest timestamp to export + + ```sh + influxd inspect export-lp \ + --bucket-id 12ab34cd56ef \ + --engine-path ~/.influxdbv2/engine \ + --compress \ + --output-path path/to/bucket-export.lp + ``` + +3. Use the [`influx write` command](/influxdb/cloud/reference/cli/influx/write/) + to write your exported line protocol to your **InfluxDB Cloud** instance. + Provide the following. + + - **-\-bucket**: Target bucket name + _OR_ + **-\-bucket-id**: Target bucket ID + - **-\-compression**: _(Optional)_ `gzip` if the exported line protocol is compressed + - **-\-file**: Import file path + + ```sh + influx write \ + --active-config cloud \ + --bucket example-bucket \ + --compression gzip \ + --file path/to/bucket-export.lp + ``` + +4. Repeat steps 2-3 for each bucket. + +{{% note %}} +#### InfluxDB Cloud write rate limits +Write requests are subject to rate limits associated with your +[InfluxDB Cloud pricing plan](/influxdb/cloud/account-management/pricing-plans/). +If your exported line protocol size potentially exceeds your rate limits, +consider doing one of the following: + +- Include the `--rate-limit` flag with `influx write` to rate limit written data. + + ```sh + influx write \ + --active-config cloud \ + --bucket example-bucket \ + --file path/to/bucket-export.lp \ + --rate-limit "5 MB / 5 min" + ``` + +- Include `--start` and `--end` flags with `influxd inpsect export-lp` to limit + exported data by time and then sequentially write the consecutive time ranges. + + ```sh + influxd inspect export-lp \ + --bucket-id 12ab34cd56ef \ + --engine-path ~/.influxdbv2/engine \ + --start 2021-01-01T00:00:00Z \ + --end 2021-02-01T00:00:00Z \ + --compress \ + --output-path path/to/example-bucket-jan-2021.lp + ``` + +To minimize network bandwidth usage, we recommend using gzip to compress exported line protocol. +However, when writing to InfluxDB Cloud, **Data In** and **Ingest batch size** +rate limits track the payload size of the **uncompressed** line protocol. +{{% /note %}} + +#### Migrate system buckets +InfluxDB [system buckets](/influxdb/cloud/reference/internals/system-buckets/) +contain data related to the InfluxDB monitoring and alerting system. +Although the retention period for system buckets in both InfluxDB Cloud and +InfluxDB 2.x is only seven days, if you want to migrate this data, +use the same method described above [to migrate time series data](#migrate-time-series-data). + +#### Export and write data in a single command +If your data and rate limits allow, you can export and write data in a single +command without writing a line protocol export file to disk. +The `influxd inspect export-lp` command can output to **stdout** and the `influx write` +command accepts line protocol from **stdin**. + +{{< expand-wrapper >}} +{{% expand "Export and write data" %}} +```sh +influxd inspect export-lp \ + --bucket-id 12ab34cd56ef \ + --engine-path ~/.influxdbv2/engine \ + --compress \ + --output-path - | \ +influx write \ + --active-config cloud \ + --bucket example-bucket \ + --compression gzip \ + --rate-limit "5 MB / 5 min" +``` +{{% /expand %}} +{{< /expand-wrapper >}} + +## Collaborate with other users +To collaborate with other users in your InfluxDB Cloud organization, +[invite users to join your organization](/influxdb/cloud/account-management/multi-user/invite-user/). diff --git a/content/influxdb/cloud/visualize-data/dashboards/control-dashboard.md b/content/influxdb/cloud/visualize-data/dashboards/control-dashboard.md index 7f1f77a06..635bb6792 100644 --- a/content/influxdb/cloud/visualize-data/dashboards/control-dashboard.md +++ b/content/influxdb/cloud/visualize-data/dashboards/control-dashboard.md @@ -37,6 +37,11 @@ Click the timezone dropdown to select a timezone to use for the dashboard. Selec Click the refresh button (**{{< icon "refresh" >}}**) to manually refresh the dashboard's data. +#### Refresh a single dashboard cell + +1. Click the **{{< icon "gear" >}}** on the dashboard cell you want to refresh. +2. Click **{{< icon "refresh" >}} Refresh**. + ### Select time range 1. Select from the time range options in the dropdown menu. diff --git a/content/influxdb/cloud/visualize-data/visualization-types/band.md b/content/influxdb/cloud/visualize-data/visualization-types/band.md index 298d4fd3d..18aa146b3 100644 --- a/content/influxdb/cloud/visualize-data/visualization-types/band.md +++ b/content/influxdb/cloud/visualize-data/visualization-types/band.md @@ -1,9 +1,9 @@ --- -title: Band Plot visualization +title: Band visualization list_title: Band list_image: /img/influxdb/2-0-visualizations-Band-example.png description: -weight: 206 +weight: 201 menu: influxdb_cloud: name: Band diff --git a/content/influxdb/cloud/visualize-data/visualization-types/gauge.md b/content/influxdb/cloud/visualize-data/visualization-types/gauge.md index 85b92615a..06bd8c1fa 100644 --- a/content/influxdb/cloud/visualize-data/visualization-types/gauge.md +++ b/content/influxdb/cloud/visualize-data/visualization-types/gauge.md @@ -4,64 +4,11 @@ list_title: Gauge list_image: /img/influxdb/2-0-visualizations-gauge-example.png description: > The Gauge view displays the single value most recent value for a time series in a gauge view. -weight: 206 +weight: 201 menu: influxdb_cloud: name: Gauge parent: Visualization types --- -The **Gauge** visualization displays the most recent value for a time series in a gauge. - -{{< img-hd src="/img/influxdb/2-0-visualizations-gauge-example-8.png" alt="Gauge example" />}} - -Select the **Gauge** option from the visualization dropdown in the upper right. - -## Gauge behavior -The gauge visualization displays a single numeric data point within a defined spectrum (_default is 0-100_). -It uses the latest point in the first table (or series) returned by the query. - -{{% note %}} -#### Queries should return one table -Flux does not guarantee the order in which tables are returned. -If a query returns multiple tables (or series), the table order can change between query executions -and result in the Gauge displaying inconsistent data. -For consistent results, the Gauge query should return a single table. -{{% /note %}} - -## Gauge Controls -To view **Gauge** controls, click **{{< icon "gear" >}} Customize** next to -the visualization dropdown. - -- **Prefix**: Prefix to add to the gauge. -- **Suffix**: Suffix to add to the gauge. -- **Decimal Places**: The number of decimal places to display for the gauge. - - **Auto** or **Custom**: Enable or disable auto-setting. - -###### Colorized Thresholds -- **Base Color**: Select a base or background color from the selection list. -- **Add a Threshold**: Change the color of the gauge based on the current value. - - **Value is**: Enter the value at which the gauge should appear in the selected color. - Choose a color from the dropdown menu next to the value. - -## Gauge examples -Gauge visualizations are useful for showing the current value of a metric and displaying -where it falls within a spectrum. - -### Steam pressure gauge -The following example queries sensor data that tracks the pressure of steam pipes -in a facility and displays it as a gauge. - -###### Query pressure data from a specific sensor -```js -from(bucket: "example-bucket") - |> range(start: -1m) - |> filter(fn: (r) => - r._measurement == "steam-sensors" and - r._field == "psi" - r.sensorID == "a211i" - ) -``` - -###### Visualization options for pressure gauge -{{< img-hd src="/img/influxdb/2-0-visualizations-gauge-pressure-8.png" alt="Pressure guage example" />}} +{{< duplicate-oss >}} diff --git a/content/influxdb/cloud/visualize-data/visualization-types/graph-single-stat.md b/content/influxdb/cloud/visualize-data/visualization-types/graph-single-stat.md index f3f80e707..20ddc9032 100644 --- a/content/influxdb/cloud/visualize-data/visualization-types/graph-single-stat.md +++ b/content/influxdb/cloud/visualize-data/visualization-types/graph-single-stat.md @@ -15,82 +15,4 @@ related: - /influxdb/cloud/visualize-data/visualization-types/single-stat --- -The **Graph + Single Stat** view displays the specified time series in a line graph -and overlays the single most recent value as a large numeric value. - -{{< img-hd src="/img/influxdb/2-0-visualizations-line-graph-single-stat-example-8.png" alt="Line Graph + Single Stat example" />}} - -Select the **Graph + Single Stat** option from the visualization dropdown in the upper right. - -## Graph + Single Stat behavior -The Graph visualization color codes each table (or series) in the queried data set. -When multiple series are present, it automatically assigns colors based on the selected [Line Colors option](#options). - -The Single Stat visualization displays a single numeric data point. -It uses the latest point in the first table (or series) returned by the query. - -{{% note %}} -#### Queries should return one table -Flux does not guarantee the order in which tables are returned. -If a query returns multiple tables (or series), the table order can change between query executions -and result in the Single Stat visualization displaying inconsistent data. -For consistent Single Stat results, the query should return a single table. -{{% /note %}} - -## Graph + Single Stat Controls -To view **Graph + Single Stat** controls, click **{{< icon "gear" >}} Customize** next to -the visualization dropdown. - -###### Data -- **X Column**: Select a column to display on the x-axis. -- **Y Column**: Select a column to display on the y-axis. - -###### Options -- **Line Colors**: Select a color scheme to use for your graph. -- **Shade Area Below Lines**: Shade in the area below the graph lines. - -###### Y Axis -- **Y Axis Label**: Label for the y-axis. -- **Y Tick Prefix**: Prefix to be added to y-value. -- **Y Tick Suffix**: Suffix to be added to y-value. -- **Y Axis Domain**: The y-axis value range. - - **Auto**: Automatically determine the value range based on values in the data set. - - **Custom**: Manually specify the minimum y-axis value, maximum y-axis value, or range by including both. - - **Min**: Minimum y-axis value. - - **Max**: Maximum y-axis value. -- **Positioning**: - - **Overlaid**: Display graph lines overlaid on each other. - - **Stacked**: Display graph lines stacked on top of each other. - -###### Customize Single-Stat -- **Prefix**: Prefix to be added to the single stat. -- **Suffix**: Suffix to be added to the single stat. -- **Decimal Places**: The number of decimal places to display for the single stat. - - **Auto** or **Custom**: Enable or disable auto-setting. - -###### Colorized Thresholds -- **Base Color**: Select a base or background color from the selection list. -- **Add a Threshold**: Change the color of the single stat based on the current value. - - **Value is**: Enter the value at which the single stat should appear in the selected color. - Choose a color from the dropdown menu next to the value. -- **Colorization**: Choose **Text** for the single stat to change color based on the configured thresholds. - Choose **Background** for the background of the graph to change color based on the configured thresholds. - -## Graph + Single Stat examples -The primary use case for the Graph + Single Stat visualization is to show the current or latest -value as well as historical values. - -### Show current value and historical values -The following example shows the current percentage of memory used as well as memory usage over time: - -###### Query memory usage percentage -```js -from(bucket: "example-bucket") - |> range(start: v.timeRangeStart, stop: v.timeRangeStop) - |> filter(fn: (r) => - r._measurement == "mem" and - r._field == "used_percent" - ) -``` -###### Memory allocations visualization -{{< img-hd src="/img/influxdb/2-0-visualizations-graph-single-stat-mem-8.png" alt="Graph + Single Stat Memory Usage Example" />}} +{{< duplicate-oss >}} diff --git a/content/influxdb/cloud/visualize-data/visualization-types/graph.md b/content/influxdb/cloud/visualize-data/visualization-types/graph.md index 29d4bd17a..79884d3b0 100644 --- a/content/influxdb/cloud/visualize-data/visualization-types/graph.md +++ b/content/influxdb/cloud/visualize-data/visualization-types/graph.md @@ -11,64 +11,4 @@ menu: parent: Visualization types --- -The Graph visualization provides several types of graphs, each configured through -the [Graph controls](#graph-controls). - -{{< img-hd src="/img/influxdb/2-0-visualizations-line-graph-example-8.png" alt="Line Graph example" />}} - -Select the **Graph** option from the visualization dropdown in the upper right. - -## Graph behavior -The Graph visualization color codes each table (or series) in the queried data set. -When multiple series are present, it automatically assigns colors based on the selected [Line Colors option](#options). - -When using a line graph, all points within a single table are connected. When multiple series are present, it automatically assigns colors based on the selected [Line Colors option](#options). - -## Graph controls -To view **Graph** controls, click **{{< icon "gear" >}} Customize** next to -the visualization dropdown. - -###### Data -- **X Column**: Select a column to display on the x-axis. -- **Y Column**: Select a column to display on the y-axis. - -###### Options -- **Interpolation**: Select from the following options: - - **Line**: Display a time series in a line graph - - **Smooth**: Display a time series in a line graph with smooth point interpolation. - - **Step**: Display a time series in a staircase graph. - - -- **Line Colors**: Select a color scheme to use for your graph. -- **Shade Area Below Lines**: Shade in the area below the graph lines. - -###### Y Axis -- **Y Axis Label**: Label for the y-axis. -- **Y Tick Prefix**: Prefix to be added to y-value. -- **Y Tick Suffix**: Suffix to be added to y-value. -- **Y Axis Domain**: The y-axis value range. - - **Auto**: Automatically determine the value range based on values in the data set. - - **Custom**: Manually specify the minimum y-axis value, maximum y-axis value, or range by including both. - - **Min**: Minimum y-axis value. - - **Max**: Maximum y-axis value. -- **Positioning**: - - **Overlaid**: Display graph lines overlaid on each other. - - **Stacked**: Display graph lines stacked on top of each other. - - -## Graph Examples - -##### Graph with linear interpolation -{{< img-hd src="/img/influxdb/2-0-visualizations-line-graph-example-8.png" alt="Line Graph example" />}} - -##### Graph with smooth interpolation -{{< img-hd src="/img/influxdb/2-0-visualizations-line-graph-smooth-example-8.png" alt="Step-Plot Graph example" />}} - -##### Graph with step interpolation -{{< img-hd src="/img/influxdb/2-0-visualizations-line-graph-step-example-8.png" alt="Step-Plot Graph example" />}} - - - - +{{< duplicate-oss >}} diff --git a/content/influxdb/cloud/visualize-data/visualization-types/heatmap.md b/content/influxdb/cloud/visualize-data/visualization-types/heatmap.md index f7c4fa451..a42c28a62 100644 --- a/content/influxdb/cloud/visualize-data/visualization-types/heatmap.md +++ b/content/influxdb/cloud/visualize-data/visualization-types/heatmap.md @@ -5,7 +5,7 @@ list_image: /img/influxdb/2-0-visualizations-heatmap-example.png description: > A Heatmap displays the distribution of data on an x and y axes where color represents different concentrations of data points. -weight: 203 +weight: 202 menu: influxdb_cloud: name: Heatmap @@ -14,102 +14,4 @@ related: - /influxdb/cloud/visualize-data/visualization-types/scatter --- -A **Heatmap** displays the distribution of data on an x and y axes where color -represents different concentrations of data points. - -{{< img-hd src="/img/influxdb/2-0-visualizations-heatmap-example.png" alt="Heatmap example" />}} - -Select the **Heatmap** option from the visualization dropdown in the upper right. - -## Heatmap behavior -Heatmaps divide data points into "bins" – segments of the visualization with upper -and lower bounds for both [X and Y axes](#data). -The [Bin Size option](#options) determines the bounds for each bin. -The total number of points that fall within a bin determine the its value and color. -Warmer or brighter colors represent higher bin values or density of points within the bin. - -## Heatmap Controls -To view **Heatmap** controls, click **{{< icon "gear" >}} Customize** next to -the visualization dropdown. - -###### Data -- **X Column**: Select a column to display on the x-axis. -- **Y Column**: Select a column to display on the y-axis. - -###### Options -- **Color Scheme**: Select a color scheme to use for your heatmap. -- **Bin Size**: Specify the size of each bin. Default is 10. - -###### X Axis -- **X Axis Label**: Label for the x-axis. -- **X Tick Prefix**: Prefix to be added to x-value. -- **X Tick Suffix**: Suffix to be added to x-value. -- **X Axis Domain**: The x-axis value range. - - **Auto**: Automatically determine the value range based on values in the data set. - - **Custom**: Manually specify the minimum y-axis value, maximum y-axis value, or range by including both. - - **Min**: Minimum x-axis value. - - **Max**: Maximum x-axis value. - -###### Y Axis -- **Y Axis Label**: Label for the y-axis. -- **Y Tick Prefix**: Prefix to be added to y-value. -- **Y Tick Suffix**: Suffix to be added to y-value. -- **Y Axis Domain**: The y-axis value range. - - **Auto**: Automatically determine the value range based on values in the data set. - - **Custom**: Manually specify the minimum y-axis value, maximum y-axis value, or range by including both. - - **Min**: Minimum y-axis value. - - **Max**: Maximum y-axis value. - -## Heatmap examples - -### Cross-measurement correlation -The following example explores possible correlation between CPU and Memory usage. -It uses data collected with the Telegraf [Mem](/{{< latest "telegraf" >}}/plugins//#mem) -and [CPU](/{{< latest "telegraf" >}}/plugins//#cpu) input plugins. - -###### Join CPU and memory usage -The following query joins CPU and memory usage on `_time`. -Each row in the output table contains `_value_cpu` and `_value_mem` columns. - -```js -cpu = from(bucket: "example-bucket") - |> range(start: v.timeRangeStart, stop: v.timeRangeStop) - |> filter(fn: (r) => - r._measurement == "cpu" and - r._field == "usage_system" and - r.cpu == "cpu-total" - ) - -mem = from(bucket: "example-bucket") - |> range(start: v.timeRangeStart, stop: v.timeRangeStop) - |> filter(fn: (r) => - r._measurement == "mem" and - r._field == "used_percent" - ) - -join(tables: {cpu: cpu, mem: mem}, on: ["_time"], method: "inner") -``` - -###### Use a heatmap to visualize correlation -In the Heatmap visualization controls, `_value_cpu` is selected as the [X Column](#data) -and `_value_mem` is selected as the [Y Column](#data). -The domain for each axis is also customized to account for the scale difference -between column values. - -{{< img-hd src="/img/influxdb/2-0-visualizations-heatmap-correlation.png" alt="Heatmap correlation example" />}} - - -## Important notes - -### Differences between a heatmap and a scatter plot -Heatmaps and [Scatter plots](/influxdb/cloud/visualize-data/visualization-types/scatter/) -both visualize the distribution of data points on X and Y axes. -However, in certain cases, heatmaps provide better visibility into point density. - -For example, the dashboard cells below visualize the same query results: - -{{< img-hd src="/img/influxdb/2-0-visualizations-heatmap-vs-scatter.png" alt="Heatmap vs Scatter plot" />}} - -The heatmap indicates isolated high point density, which isn't visible in the scatter plot. -In the scatter plot visualization, points that share the same X and Y coordinates -appear as a single point. +{{< duplicate-oss >}} diff --git a/content/influxdb/cloud/visualize-data/visualization-types/histogram.md b/content/influxdb/cloud/visualize-data/visualization-types/histogram.md index 7a87896c5..91e6c701a 100644 --- a/content/influxdb/cloud/visualize-data/visualization-types/histogram.md +++ b/content/influxdb/cloud/visualize-data/visualization-types/histogram.md @@ -5,76 +5,11 @@ list_image: /img/influxdb/2-0-visualizations-histogram-example.png description: > A histogram is a way to view the distribution of data. The y-axis is dedicated to count, and the x-axis is divided into bins. -weight: 204 +weight: 202 menu: influxdb_cloud: name: Histogram parent: Visualization types --- -A histogram is a way to view the distribution of data. -The y-axis is dedicated to count, and the X-axis is divided into bins. - -{{< img-hd src="/img/influxdb/2-0-visualizations-histogram-example.png" alt="Histogram example" />}} - -Select the **Histogram** option from the visualization dropdown in the upper right. - -## Histogram behavior -The Histogram visualization is a bar graph that displays the number of data points -that fall within "bins" – segments of the X axis with upper and lower bounds. -Bin thresholds are determined by dividing the width of the X axis by the number -of bins set using the [Bins option](#options). -Data within bins can be further grouped or segmented by selecting columns in the -[Group By option](#options). - -{{% note %}} -The Histogram visualization automatically bins, segments, and counts data. -To work properly, query results **should not** be structured as histogram data. -{{% /note %}} - -## Histogram Controls -To view **Histogram** controls, click **{{< icon "gear" >}} Customize** next to -the visualization dropdown. - -###### Data -- **X Column**: The column to select data from. -- **Group By**: The column to group by. - -###### Options -- **Color Scheme**: Select a color scheme to use for your graph. -- **Positioning**: Select **Stacked** to stack groups in a bin on top of each other. - Select **Overlaid** to overlay groups in each bin. -- **Bins**: Enter a number of bins to divide data into or select Auto to automatically - calculate the number of bins. - - **Auto** or **Custom**: Enable or disable auto-setting. - -###### X Axis -- **X Axis Label**: Label for the x-axis. -- **X Axis Domain**: The x-axis value range. - - **Auto**: Automatically determine the value range based on values in the data set. - - **Custom**: Manually specify the value range of the x-axis. - - **Min**: Minimum x-axis value. - - **Max**: Maximum x-axis value. - -## Histogram examples - -### View error counts by severity over time -The following example uses the Histogram visualization to show the number of errors -"binned" by time and segmented by severity. -_It utilizes data from the [Telegraf Syslog plugin](/{{< latest "telegraf" >}}/plugins//#syslog)._ - -##### Query for errors by severity code -```js -from(bucket: "example-bucket") - |> range(start: v.timeRangeStart, stop: v.timeRangeStop) - |> filter(fn: (r) => - r._measurement == "syslog" and - r._field == "severity_code" - ) -``` - -##### Histogram settings -In the Histogram visualization options, select `_time` as the [X Column](#data) -and `severity` as the [Group By](#data) option: - -{{< img-hd src="/img/influxdb/2-0-visualizations-histogram-errors.png" alt="Errors histogram" />}} +{{< duplicate-oss >}} diff --git a/content/influxdb/cloud/visualize-data/visualization-types/mosaic.md b/content/influxdb/cloud/visualize-data/visualization-types/mosaic.md index 7a4880e63..08c5c5e7a 100644 --- a/content/influxdb/cloud/visualize-data/visualization-types/mosaic.md +++ b/content/influxdb/cloud/visualize-data/visualization-types/mosaic.md @@ -5,79 +5,11 @@ list_image: /img/influxdb/2-0-visualizations-mosaic-example.png description: > The Mosaic visualization displays state changes in your time series data. This visualization type is useful when you want to show changes in string-based states over time. -weight: 206 +weight: 202 menu: influxdb_cloud: name: Mosaic parent: Visualization types --- -The **Mosaic** visualization displays state changes in your time series data. -This visualization type is useful when you want to show changes in string-based states over time. - -{{< img-hd src="/img/influxdb/2-0-visualizations-mosaic-example.png" alt="Mosaic data visualization" />}} - -Select the **Mosaic** option from the visualization dropdown in the upper left. - -## Mosaic behavior -The mosaic visualization displays colored tiles based on string values in a specified column. -Each unique string value is represented by a different color. - -## Mosaic controls -To view **Mosaic** controls, click **{{< icon "gear" >}} Customize** next to the visualization dropdown. - -###### Data -- **Fill Column**: Select a column to fill in the mosaic tiles. -- **X Column**: Select a column to display on the x-axis. -- **Y Column**: Select one or more columns to display on the y-axis. -- **Time Format**: Select the time format. Options include: - {{< ui/timestamp-formats >}} - -###### Options -- **Color Scheme**: Select a color scheme to use for your graph. - -###### X Axis -- **X Axis Label**: Enter a label for the x-axis. -- **Generate X-Axis Tick Marks**: Select the method to generate x-axis tick marks: - - **Auto**: Select to automatically generate tick marks. - - **Custom**: To customize the number of x-axis tick marks, select this option, and then enter the following: - - **Total Tick Marks**: Enter the total number of timestamp ticks to display. - - **Start Tick Marks At**: Enter the time, in RFC3339 format, to start displaying ticks. Use the **Date Picker** field to automatically generate an RFC3339 formatted timestamp for this field. - - **Tick Mark Interval**: Enter the number of milliseconds in between each timestamp tick. - -###### Y Axis -- **Y Axis Label**: Enter a label for the y-axis. -- **Y Label Separator**: If there's more than one column on the y-axis, enter a delimiter to separate the label, such as a comma or space. If there's no separator specified, the labels are a continuous string of all y columns. -- **Generate Y-Axis Tick Marks**: Select the method to generate y-axis tick marks: - - **Auto**: Select to automatically generate tick marks. - - **Custom**: To customize the number of y-axis tick marks, select this option, and then enter the following: - - **Total Tick Marks**: Enter the total number of ticks to display. - - **Start Tick Marks At**: Enter the value to start ticks at. - - **Tick Mark Interval**: Enter the interval in between each tick. - -###### Legend -- **Legend Orientation**: Select the orientation of the legend that appears upon hover: - - **Horizontal**: Select to display the legend horizontally. - - **Vertical**: Select to display the legend vertically. -- **Opacity**: Adjust the legend opacity using the slider. -- **Colorize Rows**: Select to display legend rows in colors. - -## Example query -The following query uses the [Website Monitoring demo data](/influxdb/cloud/reference/sample-data/#influxdb-cloud-demo-data) -to display changes in response times for monitored URLs. -The query assigns a `responseTimeSummary` string value based on the response time range. -Use `responseTimeSummary` as the **Fill Column** in the [visualization controls](#data). - -```js -from(bucket: "Website Monitoring Bucket") - |> range(start: v.timeRangeStart, stop: v.timeRangeStop) - |> filter(fn: (r) => r._measurement == "http_response") - |> filter(fn: (r) => r._field == "response_time") - |> aggregateWindow(every: v.windowPeriod, fn: max, createEmpty: false) - |> map(fn: (r) => ({ - r with responseTimeSummary: - if r._value > 0.6 then "high" - else if r._value > 0.4 then "medium" - else "ok" - })) -``` +{{< duplicate-oss >}} diff --git a/content/influxdb/cloud/visualize-data/visualization-types/scatter.md b/content/influxdb/cloud/visualize-data/visualization-types/scatter.md index d44e6eb5d..c128b4828 100644 --- a/content/influxdb/cloud/visualize-data/visualization-types/scatter.md +++ b/content/influxdb/cloud/visualize-data/visualization-types/scatter.md @@ -4,7 +4,7 @@ list_title: Scatter list_image: /img/influxdb/2-0-visualizations-scatter-example.png description: > The Scatter view uses a scatter plot to display time series data. -weight: 208 +weight: 202 menu: influxdb_cloud: name: Scatter @@ -13,97 +13,4 @@ related: - /influxdb/cloud/visualize-data/visualization-types/heatmap --- -The **Scatter** view uses a scatter plot to display time series data. - -{{< img-hd src="/img/influxdb/2-0-visualizations-scatter-example.png" alt="Scatter plot example" />}} - -Select the **Scatter** option from the visualization dropdown in the upper right. - -## Scatter behavior -The scatter visualization maps each data point to X and Y coordinates. -X and Y axes are specified with the [X Column](#data) and [Y Column](#data) visualization options. -Each unique series is differentiated using fill colors and symbols. -Use the [Symbol Column](#data) and [Fill Column](#data) options to select columns -used to differentiate points in the visualization. - -## Scatter controls -To view **Scatter** controls, click **{{< icon "gear" >}} Customize** next to -the visualization dropdown. - -###### Data -- **Symbol Column**: Define a column containing values that should be differentiated with symbols. -- **Fill Column**: Define a column containing values that should be differentiated with fill color. -- **X Column**: Select a column to display on the x-axis. -- **Y Column**: Select a column to display on the y-axis. - -###### Options -- **Color Scheme**: Select a color scheme to use for your scatter plot. - -###### X Axis -- **X Axis Label**: Label for the x-axis. - -###### Y Axis -- **Y Axis Label**: Label for the y-axis. -- **Y Tick Prefix**: Prefix to be added to y-value. -- **Y Tick Suffix**: Suffix to be added to y-value. -- **Y Axis Domain**: The y-axis value range. - - **Auto**: Automatically determine the value range based on values in the data set. - - **Custom**: Manually specify the minimum y-axis value, maximum y-axis value, or range by including both. - - **Min**: Minimum y-axis value. - - **Max**: Maximum y-axis value. - -## Scatter examples - -### Cross-measurement correlation -The following example explores possible correlation between CPU and Memory usage. -It uses data collected with the Telegraf [Mem](/{{< latest "telegraf" >}}/plugins//#mem) -and [CPU](/{{< latest "telegraf" >}}/plugins//#cpu) input plugins. - -###### Query CPU and memory usage -The following query creates a union of CPU and memory usage. -It scales the CPU usage metric to better align with baseline memory usage. - -```js -cpu = from(bucket: "example-bucket") - |> range(start: v.timeRangeStart, stop: v.timeRangeStop) - |> filter(fn: (r) => - r._measurement == "cpu" and - r._field == "usage_system" and - r.cpu == "cpu-total" - ) - // Scale CPU usage - |> map(fn: (r) => ({ r with - _value: r._value + 60.0, - _time: r._time - }) - ) - -mem = from(bucket: "example-bucket") - |> range(start: v.timeRangeStart, stop: v.timeRangeStop) - |> filter(fn: (r) => - r._measurement == "mem" and - r._field == "used_percent" - ) - -union(tables: [cpu, mem]) -``` - -###### Use a scatter plot to visualize correlation -In the Scatter visualization controls, points are differentiated based on their group keys. - -{{< img-hd src="/img/influxdb/2-0-visualizations-scatter-correlation.png" alt="Heatmap correlation example" />}} - -## Important notes - -### Differences between a scatter plot and a heatmap -Scatter plots and [Heatmaps](/influxdb/cloud/visualize-data/visualization-types/heatmap/) -both visualize the distribution of data points on X and Y axes. -However, in certain cases, scatterplots can "hide" points if they share the same X and Y coordinates. - -For example, the dashboard cells below visualize the same query results: - -{{< img-hd src="/img/influxdb/2-0-visualizations-heatmap-vs-scatter.png" alt="Heatmap vs Scatter plot" />}} - -The heatmap indicates isolated high point density, which isn't visible in the scatter plot. -In the scatter plot visualization, points that share the same X and Y coordinates -appear as a single point. +{{< duplicate-oss >}} diff --git a/content/influxdb/cloud/visualize-data/visualization-types/single-stat.md b/content/influxdb/cloud/visualize-data/visualization-types/single-stat.md index 2da5ff22a..a42613029 100644 --- a/content/influxdb/cloud/visualize-data/visualization-types/single-stat.md +++ b/content/influxdb/cloud/visualize-data/visualization-types/single-stat.md @@ -4,62 +4,11 @@ list_title: Single stat list_image: /img/influxdb/2-0-visualizations-single-stat-example.png description: > The Single Stat view displays the most recent value of the specified time series as a numerical value. -weight: 205 +weight: 202 menu: influxdb_cloud: name: Single Stat parent: Visualization types --- -The **Single Stat** view displays the most recent value of the specified time series as a numerical value. - -{{< img-hd src="/img/influxdb/2-0-visualizations-single-stat-example-8.png" alt="Single stat example" />}} - -Select the **Single Stat** option from the visualization dropdown in the upper right. - -## Single Stat behavior -The Single Stat visualization displays a single numeric data point. -It uses the latest point in the first table (or series) returned by the query. - -{{% note %}} -#### Queries should return one table -Flux does not guarantee the order in which tables are returned. -If a query returns multiple tables (or series), the table order can change between query executions -and result in the Single Stat visualization displaying inconsistent data. -For consistent results, the Single Stat query should return a single table. -{{% /note %}} - -## Single Stat Controls -To view **Single Stat** controls, click **{{< icon "gear" >}} Customize** next to -the visualization dropdown. - -- **Prefix**: Prefix to be added to the single stat. -- **Suffix**: Suffix to be added to the single stat. -- **Decimal Places**: The number of decimal places to display for the single stat. - - **Auto** or **Custom**: Enable or disable auto-setting. - -###### Colorized Thresholds -- **Base Color**: Select a base or background color from the selection list. -- **Add a Threshold**: Change the color of the single stat based on the current value. - - **Value is**: Enter the value at which the single stat should appear in the selected color. - Choose a color from the dropdown menu next to the value. -- **Colorization**: Choose **Text** for the single stat to change color based on the configured thresholds. - Choose **Background** for the background of the graph to change color based on the configured thresholds. - -## Single Stat examples - -### Show human-readable current value -The following example shows the current memory usage displayed has a human-readable percentage: - -###### Query memory usage percentage -```js -from(bucket: "example-bucket") - |> range(start: v.timeRangeStart, stop: v.timeRangeStop) - |> filter(fn: (r) => - r._measurement == "mem" and - r._field == "used_percent" - ) -``` - -###### Memory usage as a single stat -{{< img-hd src="/img/influxdb/2-0-visualizations-single-stat-example-8.png" alt="Graph + Single Stat Memory Usage Example" />}} +{{< duplicate-oss >}} diff --git a/content/influxdb/cloud/visualize-data/visualization-types/table.md b/content/influxdb/cloud/visualize-data/visualization-types/table.md index 274114a44..cf963629d 100644 --- a/content/influxdb/cloud/visualize-data/visualization-types/table.md +++ b/content/influxdb/cloud/visualize-data/visualization-types/table.md @@ -5,73 +5,11 @@ list_image: /img/influxdb/2-0-visualizations-table-example.png description: > The Table option displays the results of queries in a tabular view, which is sometimes easier to analyze than graph views of data. -weight: 207 +weight: 202 menu: influxdb_cloud: name: Table parent: Visualization types --- -The **Table** option displays the results of queries in a tabular view, which is -sometimes easier to analyze than graph views of data. - -{{< img-hd src="/img/influxdb/2-0-visualizations-table-example.png" alt="Table example" />}} - -Select the **Table** option from the visualization dropdown in the upper right. - -## Table behavior -The table visualization renders queried data in structured, easy-to-read tables. -Columns and rows match those in the query output. -If query results contain multiple tables, only one table is shown at a time. -Select other output tables in the far left column of the table visualization. -Tables are identified by their [group key](/influxdb/cloud/query-data/get-started/#group-keys). - -## Table Controls -To view **Table** controls, click **{{< icon "gear" >}} Customize** next to -the visualization dropdown. - -- **Default Sort Field**: Select the default sort field. Default is **time**. -- **Time Format**: Select the time format. Options include: - {{< ui/timestamp-formats >}} - -- **Decimal Places**: Enter the number of decimal places. Default (empty field) is **unlimited**. - - **Auto** or **Custom**: Enable or disable auto-setting. - -###### Column Settings -- **First Column**: Toggle to **Fixed** to lock the first column so that the listings are always visible. - Threshold settings do not apply in the first column when locked. -- **Table Columns**: - - Enter a new name to rename any of the columns. - - Click the eye icon next to a column to hide it. - - [additional]: Enter name for each additional column. - - Change the order of the columns by dragging to the desired position. - -###### Colorized Thresholds -- **Base Color**: Select a base or background color from the selection list. -- **Add a Threshold**: Change the color of the table based on the current value. - - **Value is**: Enter the value at which the table should appear in the selected color. - Choose a color from the dropdown menu next to the value. - -## Table examples -Tables are helpful when displaying many human-readable metrics in a dashboard -such as cluster statistics or log messages. - -### Human-readable cluster metrics -The following example queries the latest reported memory usage from a cluster of servers. - -###### Query the latest memory usage from each host -```js -from(bucket: "example-bucket") - |> range(start: v.timeRangeStart, stop: v.timeRangeStop) - |> filter(fn: (r) => - r._measurement == "mem" and - r._field == "used_percent" - ) - |> group(columns: ["host"]) - |> last() - |> group() - |> keep(columns: ["_value", "host"]) -``` - -###### Cluster metrics in a table -{{< img-hd src="/img/influxdb/2-0-visualizations-table-human-readable.png" alt="Human readable metrics in a table" />}} +{{< duplicate-oss >}} diff --git a/content/influxdb/cloud/write-data/bulk-ingest-cloud.md b/content/influxdb/cloud/write-data/bulk-ingest-cloud.md index 2c0ff5785..d6287822c 100644 --- a/content/influxdb/cloud/write-data/bulk-ingest-cloud.md +++ b/content/influxdb/cloud/write-data/bulk-ingest-cloud.md @@ -1,7 +1,7 @@ --- title: Bulk ingest -seotitle: Write bulk data to InfluxDB Cloud. -list_title: Write bulk data to InfluxDB Cloud. +seotitle: Write bulk data to InfluxDB Cloud +list_title: Write bulk data to InfluxDB Cloud weight: 105 description: > Write existing data to InfluxDB Cloud in bulk. @@ -14,7 +14,10 @@ alias: - /influxdb/v2.0/write-data/bulk-ingest-cloud --- -To upload a large amount of previously existing *historical* data into InfluxDB Cloud, contact Support for assistance. -We’ll review your ingest rate limits, volume, and existing [data schema](/influxdb/cloud/reference/key-concepts/data-schema) to ensure the most efficient migration. +To upload a large amount of previously existing *historical* data into InfluxDB Cloud, +[contact InfluxData Support](mailto:support@influxdata.com) for assistance. +We’ll review your ingest rate limits, volume, and existing +[data schema](/influxdb/cloud/reference/key-concepts/data-schema) to ensure the +most efficient migration. Given our usage-based pricing and because the API is optimized for batched writing, we do not recommend using the API to ingest bulk data. diff --git a/content/influxdb/cloud/write-data/developer-tools/_index.md b/content/influxdb/cloud/write-data/developer-tools/_index.md index 402c9655b..c54c7477b 100644 --- a/content/influxdb/cloud/write-data/developer-tools/_index.md +++ b/content/influxdb/cloud/write-data/developer-tools/_index.md @@ -1,10 +1,10 @@ --- -title: Developer tools +title: Write data with developer tools seotitle: Write data to InfluxDB with developer tools list_title: Use developer tools weight: 102 description: > - Write data to InfluxDB with developer tools. + Use developer tools such as the InfluxDB API and `influx` CLI to write data to InfluxDB. menu: influxdb_cloud: name: Developer tools diff --git a/content/influxdb/cloud/write-data/developer-tools/api.md b/content/influxdb/cloud/write-data/developer-tools/api.md index 6b7d854ee..9ccc33afb 100644 --- a/content/influxdb/cloud/write-data/developer-tools/api.md +++ b/content/influxdb/cloud/write-data/developer-tools/api.md @@ -1,10 +1,8 @@ --- -title: InfluxDB API -seotitle: Write data with the InfluxDB API -list_title: Write data with the InfluxDB API +title: Write data with the InfluxDB API weight: 206 description: > - Write data to InfluxDB using the InfluxDB API. + Use the `/write` endpoint of the InfluxDB API to write data to InfluxDB. menu: influxdb_cloud: name: InfluxDB API diff --git a/content/influxdb/cloud/write-data/developer-tools/client-libraries.md b/content/influxdb/cloud/write-data/developer-tools/client-libraries.md index 668595f22..4dece2780 100644 --- a/content/influxdb/cloud/write-data/developer-tools/client-libraries.md +++ b/content/influxdb/cloud/write-data/developer-tools/client-libraries.md @@ -1,10 +1,8 @@ --- -title: Client libraries -seotitle: Write data with client libraries -list_title: Write data with client libraries +title: Write data with client libraries weight: 204 description: > - Write data to InfluxDB using client libraries. + Use client libraries to write data to InfluxDB. menu: influxdb_cloud: name: Client libraries diff --git a/content/influxdb/cloud/write-data/developer-tools/influx-cli.md b/content/influxdb/cloud/write-data/developer-tools/influx-cli.md index 5910d28c9..ed7bfd219 100644 --- a/content/influxdb/cloud/write-data/developer-tools/influx-cli.md +++ b/content/influxdb/cloud/write-data/developer-tools/influx-cli.md @@ -1,10 +1,8 @@ --- -title: Influx CLI -seotitle: Write data with the influx CLI -list_title: Write data with the influx CLI +title: Write data with the influx CLI weight: 205 description: > - Write data to InfluxDB using the `influx` CLI. + Use the `influx write` command to write data to InfluxDB from the command line. menu: influxdb_cloud: name: Influx CLI diff --git a/content/influxdb/cloud/write-data/developer-tools/third-party-solutions.md b/content/influxdb/cloud/write-data/developer-tools/third-party-solutions.md index 1c6d53bdd..11fb26d84 100644 --- a/content/influxdb/cloud/write-data/developer-tools/third-party-solutions.md +++ b/content/influxdb/cloud/write-data/developer-tools/third-party-solutions.md @@ -1,7 +1,5 @@ --- -title: Third-party technologies -seotitle: Write data with third-party technologies -list_title: Write data with third-party technologies +title: Write data with third-party technologies weight: 103 description: > Write data to InfluxDB using third-party developer tools. diff --git a/content/influxdb/cloud/write-data/no-code/_index.md b/content/influxdb/cloud/write-data/no-code/_index.md index 8f5f3ebba..cfb839547 100644 --- a/content/influxdb/cloud/write-data/no-code/_index.md +++ b/content/influxdb/cloud/write-data/no-code/_index.md @@ -1,10 +1,8 @@ --- -title: No-code solutions -seotitle: Write data to InfluxDB without coding -list_title: Write data to InfluxDB without coding +title: Write data to InfluxDB without coding weight: 101 description: > - Write data to InfluxDB without writing code. + Use existing tools to write data to InfluxDB without writing code. aliases: - /influxdb/cloud/collect-data/advanced-telegraf - /influxdb/cloud/collect-data/use-telegraf diff --git a/content/influxdb/cloud/write-data/no-code/third-party.md b/content/influxdb/cloud/write-data/no-code/third-party.md index 0602698cf..dc4cbaa0e 100644 --- a/content/influxdb/cloud/write-data/no-code/third-party.md +++ b/content/influxdb/cloud/write-data/no-code/third-party.md @@ -1,10 +1,8 @@ --- -title: Third-party technologies -seotitle: Write data with third-party technologies -list_title: Write data with third-party technologies +title: Write data with no-code third-party technologies weight: 103 description: > - Write data to InfluxDB using third-party technologies. + Write data to InfluxDB using third-party technologies that do not require coding. menu: influxdb_cloud: name: Third-party technologies diff --git a/content/influxdb/cloud/write-data/no-code/use-telegraf/_index.md b/content/influxdb/cloud/write-data/no-code/use-telegraf/_index.md index 447634c97..b6e9d771a 100644 --- a/content/influxdb/cloud/write-data/no-code/use-telegraf/_index.md +++ b/content/influxdb/cloud/write-data/no-code/use-telegraf/_index.md @@ -1,5 +1,5 @@ --- -title: Telegraf (agent) +title: Use Telegraf to write data seotitle: Use the Telegraf agent to collect and write data list_title: Use the Telegraf agent weight: 101 diff --git a/content/influxdb/v1.7/flux/guides/optimize-queries.md b/content/influxdb/v1.7/flux/guides/optimize-queries.md index 271f232ab..dab8ab3e7 100644 --- a/content/influxdb/v1.7/flux/guides/optimize-queries.md +++ b/content/influxdb/v1.7/flux/guides/optimize-queries.md @@ -12,7 +12,7 @@ canonical: /influxdb/v2.0/query-data/optimize-queries/ Optimize your Flux queries to reduce their memory and compute (CPU) requirements. -- [Start queries with pushdown functions](#start-queries-with-pushdown-functions) +- [Start queries with pushdown functions](#start-queries-with-pushdowns) - [Avoid short window durations](#avoid-short-window-durations) - [Use "heavy" functions sparingly](#use-heavy-functions-sparingly) - [Balance time range and data precision](#balance-time-range-and-data-precision) diff --git a/content/influxdb/v1.8/flux/guides/optimize-queries.md b/content/influxdb/v1.8/flux/guides/optimize-queries.md index 321386951..3b295b6eb 100644 --- a/content/influxdb/v1.8/flux/guides/optimize-queries.md +++ b/content/influxdb/v1.8/flux/guides/optimize-queries.md @@ -12,7 +12,7 @@ canonical: /influxdb/v2.0/query-data/optimize-queries/ Optimize your Flux queries to reduce their memory and compute (CPU) requirements. -- [Start queries with pushdown functions](#start-queries-with-pushdown-functions) +- [Start queries with pushdown functions](#start-queries-with-pushdowns) - [Avoid short window durations](#avoid-short-window-durations) - [Use "heavy" functions sparingly](#use-heavy-functions-sparingly) - [Balance time range and data precision](#balance-time-range-and-data-precision) diff --git a/content/influxdb/v1.8/introduction/install.md b/content/influxdb/v1.8/introduction/install.md index db3dedbeb..c0b9ad90f 100644 --- a/content/influxdb/v1.8/introduction/install.md +++ b/content/influxdb/v1.8/introduction/install.md @@ -184,7 +184,7 @@ You can always run the desired version by specifying the full path: ```sh $ /usr/local/opt/influxdb/bin/influxd version -InfluxDB 2.0.4 (git: none) build_date: 2021-04-01T17:55:08Z +InfluxDB 2.0.5 (git: none) build_date: 2021-04-01T17:55:08Z $ /usr/local/opt/influxdb@1/bin/influxd version InfluxDB v1.8.4 (git: unknown unknown) ``` diff --git a/content/influxdb/v2.0/backup-restore/restore.md b/content/influxdb/v2.0/backup-restore/restore.md index 57d306daa..7aaa71297 100644 --- a/content/influxdb/v2.0/backup-restore/restore.md +++ b/content/influxdb/v2.0/backup-restore/restore.md @@ -14,32 +14,121 @@ related: products: [oss] --- -Use the `influx restore` command to restore backup data and metadata from InfluxDB OSS. - {{% cloud %}} -The `influx restore` command only restores data to InfluxDB OSS, **not {{< cloud-name "short" >}}**. +Restores **not supported in {{< cloud-name "short" >}}**. {{% /cloud %}} -When restoring data from a backup file set, InfluxDB temporarily moves existing -data and metadata while the restore process runs. -Once the process completes, the temporary data is deleted. -If the restore process fails, InfluxDB preserves the data in the temporary location. +Use the `influx restore` command to restore backup data and metadata from InfluxDB OSS. + +- [Restore data with the influx CLI](#restore-data-with-the-influx-cli) +- [Recover from a failed restore](#recover-from-a-failed-restore) + +InfluxDB moves existing data and metadata to a temporary location. +If the restore fails, InfluxDB preserves temporary data for recovery, +otherwise this data is deleted. _See [Recover from a failed restore](#recover-from-a-failed-restore)._ +{{% note %}} +#### Cannot restore to existing buckets +The `influx restore` command cannot restore data to existing buckets. +Use the `--new-bucket` flag to create a new bucket to restore data to. +To restore data and retain bucket names, [delete existing buckets](/influxdb/v2.0/organizations/buckets/delete-bucket/) +and then begin the restore process. +{{% /note %}} + ## Restore data with the influx CLI -Use the `influx restore` command and specify the path to the backup directory in the first argument. - -```sh -# Syntax -influx restore - -# Example -influx restore ~/backups/2020-01-20_12-00/ -``` +Use the `influx restore` command and specify the path to the backup directory. _For more information about restore options and flags, see the [`influx restore` documentation](/influxdb/v2.0/reference/cli/influx/restore/)._ +- [Restore all time series data](#restore-all-time-series-data) +- [Restore data from a specific bucket](#restore-data-from-a-specific-bucket) +- [Restore and replace all InfluxDB data](#restore-and-replace-all-influxdb-data) + +### Restore all time series data +To restore all time series data from a backup directory, provide the following: + +- backup directory path + +```sh +influx restore \ + --input /backups/2020-01-20_12-00/ +``` + +### Restore data from a specific bucket +To restore data from a specific backup bucket, provide the following: + +- backup directory path +- bucket name or ID + +```sh +influx restore \ + --input /backups/2020-01-20_12-00/ \ + --bucket example-bucket + +# OR + +influx restore \ + --input /backups/2020-01-20_12-00/ \ + --bucket-id 000000000000 +``` + +If a bucket with the same name as the backed up bucket already exists in InfluxDB, +use the `--new-bucket` flag to create a new bucket with a different name and +restore data into it. + +```sh +influx restore \ + --input /backups/2020-01-20_12-00/ \ + --bucket example-bucket \ + --new-bucket new-example-bucket +``` + +### Restore and replace all InfluxDB data +To restore and replace all time series data _and_ InfluxDB key-value data such as +tokens, users, dashboards, etc., include the following: + +- `--full` flag +- backup directory path + +```sh +influx restore \ + --input /backups/2020-01-20_12-00/ \ + --full +``` + +{{% note %}} +#### Restore to a new InfluxDB server +If using a backup to populate a new InfluxDB server: + +1. Retrieve the [admin token](/influxdb/v2.0/security/tokens/#admin-token) from your source InfluxDB instance. +2. Set up your new InfluxDB instance, but use the `-t`, `--token` flag to use the + **admin token** from your source instance as the admin token on your new instance. + + ```sh + influx setup --token My5uP3rSecR37t0keN + ``` +3. Restore the backup to the new server. + + ```sh + influx restore \ + --input /backups/2020-01-20_12-00/ \ + --full + ``` + +If you do not provide the admin token from your source InfluxDB instance as the +admin token in your new instance, the restore process and all subsequent attempts +to authenticate with the new server will fail. + +1. The first restore API call uses the auto-generated token to authenticate with + the new server and overwrites the entire key-value store in the new server, including + the auto-generated token. +2. The second restore API call attempts to upload time series data, but uses the + auto-generated token to authenticate with new server. + That token is overwritten in first restore API call and the process fails to authenticate. +{{% /note %}} + ## Recover from a failed restore If the restoration process fails, InfluxDB preserves existing data in a `tmp` diff --git a/content/influxdb/v2.0/get-started.md b/content/influxdb/v2.0/get-started.md index d51c651a4..18c74564f 100644 --- a/content/influxdb/v2.0/get-started.md +++ b/content/influxdb/v2.0/get-started.md @@ -22,6 +22,7 @@ _See [Differences between InfluxDB Cloud and InfluxDB OSS](#differences-between- {{% tabs %}} [macOS](#) [Linux](#) +[Windows](#) [Docker](#) [Kubernetes](#) {{% /tabs %}} @@ -46,7 +47,7 @@ brew install influxdb You can also download the InfluxDB v2.0 binaries for macOS directly: -InfluxDB v2.0 (macOS) +InfluxDB v2.0 (macOS) ##### (Optional) Verify the authenticity of downloaded binary @@ -64,13 +65,13 @@ If `gpg` is not available, see the [GnuPG homepage](https://gnupg.org/download/) For example: ``` - wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.0.4-darwin-amd64.tar.gz.asc + wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.0.5-darwin-amd64.tar.gz.asc ``` 3. Verify the signature with `gpg --verify`: ``` - gpg --verify influxdb2-2.0.4-darwin-amd64.tar.gz.asc influxdb2-2.0.4-darwin-amd64.tar.gz + gpg --verify influxdb2-2.0.5-darwin-amd64.tar.gz.asc influxdb2-2.0.5-darwin-amd64.tar.gz ``` The output from this command should include the following: @@ -87,7 +88,7 @@ or run the following command in a macOS command prompt application such ```sh # Unpackage contents to the current working directory -tar zxvf ~/Downloads/influxdb2-2.0.4-darwin-amd64.tar.gz +tar zxvf ~/Downloads/influxdb2-2.0.5-darwin-amd64.tar.gz ``` ##### (Optional) Place the binaries in your $PATH @@ -97,7 +98,7 @@ prefix the executables with `./` to run then in place. ```sh # (Optional) Copy the influx and influxd binary to your $PATH -sudo cp influxdb2-2.0.4-darwin-amd64/{influx,influxd} /usr/local/bin/ +sudo cp influxdb2-2.0.5-darwin-amd64/{influx,influxd} /usr/local/bin/ ``` {{% note %}} @@ -166,8 +167,8 @@ influxd --reporting-disabled Download InfluxDB v2.0 for Linux. -InfluxDB v2.0 (amd64) -InfluxDB v2.0 (arm) +InfluxDB v2.0 (amd64) +InfluxDB v2.0 (arm) ### (Optional) Verify the authenticity of downloaded binary @@ -185,13 +186,13 @@ If `gpg` is not available, see the [GnuPG homepage](https://gnupg.org/download/) For example: ``` - wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.0.4-linux-amd64.tar.gz.asc + wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.0.5-linux-amd64.tar.gz.asc ``` 3. Verify the signature with `gpg --verify`: ``` - gpg --verify influxdb2-2.0.4-linux-amd64.tar.gz.asc influxdb2-2.0.4-linux-amd64.tar.gz + gpg --verify influxdb2-2.0.5-linux-amd64.tar.gz.asc influxdb2-2.0.5-linux-amd64.tar.gz ``` The output from this command should include the following: @@ -208,10 +209,10 @@ _**Note:** The following commands are examples. Adjust the file names, paths, an ```sh # Unpackage contents to the current working directory -tar xvzf path/to/influxdb2-2.0.4-linux-amd64.tar.gz +tar xvzf path/to/influxdb2-2.0.5-linux-amd64.tar.gz # Copy the influx and influxd binary to your $PATH -sudo cp influxdb2-2.0.4-linux-amd64/{influx,influxd} /usr/local/bin/ +sudo cp influxdb2-2.0.5-linux-amd64/{influx,influxd} /usr/local/bin/ ``` {{% note %}} @@ -316,6 +317,80 @@ influxd --reporting-disabled {{% /tab-content %}} + +{{% tab-content %}} +{{% warn %}} +### Experimental Windows support +InfluxDB 2.0 on Windows is currently considered experimental. +If you experience issues, please [submit an issue](https://github.com/influxdata/influxdb/issues/new/choose) +to the InfluxDB Github repository. + +##### System requirements +- Windows 10 +- 64-bit AMD architecture +- [Powershell](https://docs.microsoft.com/powershell/) or + [Windows Subsystem for Linux (WSL)](https://docs.microsoft.com/en-us/windows/wsl/) + +##### Command line examples +Use **Powershell** or **WSL** to execute `influx` and `influxd` commands. +The command line examples in this documentation use `influx` and `influxd` as if +installed on the system `PATH`. +If these binaries are not installed on your `PATH`, replace `influx` and `influxd` +in the provided examples with `./influx` and `./influxd` respectively. +{{% /warn %}} + +### Download and install InfluxDB v2.0 +Download InfluxDB v2.0 for Windows. + +InfluxDB v2.0 (Windows) + +Expand the downloaded archive into `C:\Program Files\InfluxData\influxdb`. + +### Networking ports +By default, InfluxDB uses TCP port `8086` for client-server communication over +the [InfluxDB HTTP API](/influxdb/v2.0/reference/api/). + +### Start InfluxDB +In **Powershell**, navigate into `C:\Program Files\InfluxData\influxdb` and start +InfluxDB by running the `influxd` daemon: + +```powershell +> cd -Path C:\Program Files\InfluxData\influxdb +> ./influxd +``` + +_See the [`influxd` documentation](/influxdb/v2.0/reference/cli/influxd) for information about +available flags and options._ + +{{% note %}} +#### Grant network access +When starting InfluxDB for the first time, **Windows Defender** will appear with +the following message: + +> Windows Defender Firewall has blocked some features of this app. + +1. Select **Private networks, such as my home or work network**. +2. Click **Allow access**. +{{% /note %}} + +{{% note %}} +#### InfluxDB "phone home" + +By default, InfluxDB sends telemetry data back to InfluxData. +The [InfluxData telemetry](https://www.influxdata.com/telemetry) page provides +information about what data is collected and how it is used. + +To opt-out of sending telemetry data back to InfluxData, include the +`--reporting-disabled` flag when starting `influxd`. + +```bash +./influxd --reporting-disabled +``` +{{% /note %}} + +{{% /tab-content %}} + + {{% tab-content %}} ### Download and run InfluxDB v2.0 @@ -325,7 +400,7 @@ Expose port `8086`, which InfluxDB uses for client-server communication over the [InfluxDB HTTP API](/influxdb/v2.0/reference/api/). ```sh -docker run --name influxdb -p 8086:8086 influxdb:2.0.4 +docker run --name influxdb -p 8086:8086 influxdb:2.0.5 ``` _To run InfluxDB in [detached mode](https://docs.docker.com/engine/reference/run/#detached-vs-foreground), include the `-d` flag in the `docker run` command._ @@ -345,7 +420,7 @@ _To run InfluxDB in [detached mode](https://docs.docker.com/engine/reference/run --name influxdb \ -p 8086:8086 \ --volume $PWD:/root/.influxdbv2 \ - influxdb:2.0.4 + influxdb:2.0.5 ``` ### Configure InfluxDB with Docker @@ -358,7 +433,7 @@ To mount an InfluxDB configuration file and use it from within Docker: ```sh docker run \ - --rm influxdb:2.0.4 \ + --rm influxdb:2.0.5 \ influxd print-config > config.yml ``` @@ -369,7 +444,7 @@ To mount an InfluxDB configuration file and use it from within Docker: ```sh docker run -p 8086:8086 \ -v $PWD/config.yml:/etc/influxdb2/config.yml \ - influxdb:2.0.4 + influxdb:2.0.5 ``` (Find more about configuring InfluxDB [here](https://docs.influxdata.com/influxdb/v2.0/reference/config-options/).) @@ -393,7 +468,7 @@ To opt-out of sending telemetry data back to InfluxData, include the `--reporting-disabled` flag when starting the InfluxDB container. ```sh -docker run -p 8086:8086 influxdb:2.0.4 --reporting-disabled +docker run -p 8086:8086 influxdb:2.0.5 --reporting-disabled ``` {{% /note %}} @@ -467,11 +542,11 @@ The setup process is available in both the InfluxDB user interface (UI) and in the `influx` command line interface (CLI). {{% note %}} -#### Admin token permissions -The **Admin token** created in the InfluxDB setup process has +#### Operator token permissions +The **Operator token** created in the InfluxDB setup process has **full read and write access to all organizations** in the database. To prevent accidental interactions across organizations, we recommend -[creating an All Access token](/influxdb/v2.0/security/tokens/create-token/) +[creating an All-Access token](/influxdb/v2.0/security/tokens/create-token/) for each organization and using those to manage InfluxDB. {{% /note %}} @@ -506,13 +581,13 @@ If you set up InfluxDB through the UI and want to use the [`influx` CLI](/influx 1. In a terminal, run the following command: ```sh - # Set up a configuration profile - influx config create -n default \ - -u http://localhost:8086 \ - -o example-org \ - -t mySuP3rS3cr3tT0keN \ - -a - ``` + # Set up a configuration profile + influx config create -n default \ + -u http://localhost:8086 \ + -o example-org \ + -t mySuP3rS3cr3tT0keN \ + -a + ``` This configures a new profile named `default` and makes the profile active so your `influx` CLI commands run against this instance. For more detail, see [influx config](/influxdb/v2.0/reference/cli/influx/config/). 2. Learn `influx` CLI commands. To see all available `influx` commands, type `influx -h` or check out [influx - InfluxDB command line interface](/influxdb/v2.0/reference/cli/influx/). diff --git a/content/influxdb/v2.0/influxdb-templates/use.md b/content/influxdb/v2.0/influxdb-templates/use.md index e648eb601..da0cfc351 100644 --- a/content/influxdb/v2.0/influxdb-templates/use.md +++ b/content/influxdb/v2.0/influxdb-templates/use.md @@ -55,7 +55,7 @@ To view a summary of what's included in a template before applying the template, use the [`influx template` command](/influxdb/v2.0/reference/cli/influx/template/). View a summary of a template stored in your local filesystem or from a URL. -{{% code-tabs-wrapper %}} +{{< code-tabs-wrapper >}} {{% code-tabs %}} [From a file](#) [From a URL](#) @@ -78,14 +78,14 @@ influx template -u influx template -u https://raw.githubusercontent.com/influxdata/community-templates/master/linux_system/linux_system.yml ``` {{% /code-tab-content %}} -{{% /code-tabs-wrapper %}} +{{< /code-tabs-wrapper >}} ## Validate a template To validate a template before you install it or troubleshoot a template, use the [`influx template validate` command](/influxdb/v2.0/reference/cli/influx/template/validate/). Validate a template stored in your local filesystem or from a URL. -{{% code-tabs-wrapper %}} +{{< code-tabs-wrapper >}} {{% code-tabs %}} [From a file](#) [From a URL](#) @@ -108,7 +108,7 @@ influx template validate -u influx template validate -u https://raw.githubusercontent.com/influxdata/community-templates/master/linux_system/linux_system.yml ``` {{% /code-tab-content %}} -{{% /code-tabs-wrapper %}} +{{< /code-tabs-wrapper >}} ## Apply templates Use the [`influx apply` command](/influxdb/v2.0/reference/cli/influx/apply/) to install templates diff --git a/content/influxdb/v2.0/monitor-alert/notification-endpoints/create.md b/content/influxdb/v2.0/monitor-alert/notification-endpoints/create.md index 24dc9cad6..2d4fed21f 100644 --- a/content/influxdb/v2.0/monitor-alert/notification-endpoints/create.md +++ b/content/influxdb/v2.0/monitor-alert/notification-endpoints/create.md @@ -28,10 +28,14 @@ To send notifications about changes in your data, start by creating a notificati - For HTTP, enter the **URL** to send the notification. Select the **auth method** to use: **None** for no authentication. To authenticate with a username and password, select **Basic** and then enter credentials in the **Username** and **Password** fields. To authenticate with a token, select **Bearer**, and then enter the authentication token in the **Token** field. - - For Slack, create an [Incoming WebHook](https://api.slack.com/incoming-webhooks#posting_with_webhooks) in Slack, and then enter your webHook URL in the **Slack Incoming WebHook URL** field. + - **For Slack**, create an [Incoming WebHook](https://api.slack.com/incoming-webhooks#posting_with_webhooks) in Slack, and then enter your webHook URL in the **Slack Incoming WebHook URL** field. - - For PagerDuty: + - **For PagerDuty**: - [Create a new service](https://support.pagerduty.com/docs/services-and-integrations#section-create-a-new-service), [add an integration for your service](https://support.pagerduty.com/docs/services-and-integrations#section-add-integrations-to-an-existing-service), and then enter the PagerDuty integration key for your new service in the **Routing Key** field. - - The **Client URL** provides a useful link in your PagerDuty notification. Enter any URL that you'd like to use to investigate issues. This URL is sent as the `client_url` property in the PagerDuty trigger event. By default, the **Client URL** is set to your Monitoring & Alerting History page, and the following included in the PagerDuty trigger event: `"client_url": "https://us-west-2-1.aws.cloud2.influxdata.net/orgs//alert-history”` + - The **Client URL** provides a useful link in your PagerDuty notification. Enter any URL that you'd like to use to investigate issues. This URL is sent as the `client_url` property in the PagerDuty trigger event. By default, the **Client URL** is set to your Monitoring & Alerting History page, and the following included in the PagerDuty trigger event: + + ```json + "client_url": "http://localhost:8086/orgs//alert-history" + ``` 6. Click **Create Notification Endpoint**. diff --git a/content/influxdb/v2.0/organizations/buckets/_index.md b/content/influxdb/v2.0/organizations/buckets/_index.md index 5dc4c493e..094f0cf65 100644 --- a/content/influxdb/v2.0/organizations/buckets/_index.md +++ b/content/influxdb/v2.0/organizations/buckets/_index.md @@ -11,7 +11,8 @@ influxdb/v2.0/tags: [buckets] --- A **bucket** is a named location where time series data is stored. -All buckets have a **retention policy**, a duration of time that each data point persists. +All buckets have a **retention period**, a duration of time that each data point persists. +InfluxDB drops all points with timestamps older than the bucket's retention period. A bucket belongs to an organization. The following articles provide information about managing buckets: diff --git a/content/influxdb/v2.0/organizations/buckets/create-bucket.md b/content/influxdb/v2.0/organizations/buckets/create-bucket.md index 8b3c13d07..5e8de7974 100644 --- a/content/influxdb/v2.0/organizations/buckets/create-bucket.md +++ b/content/influxdb/v2.0/organizations/buckets/create-bucket.md @@ -33,7 +33,7 @@ There are two places you can create a bucket in the UI. 3. Enter a **Name** for the bucket. 4. Select when to **Delete Data**: - **Never** to retain data forever. - - **Older than** to choose a specific retention policy. + - **Older than** to choose a specific retention period. 5. Click **Create** to create the bucket. ### Create a bucket in the Data Explorer @@ -46,7 +46,7 @@ There are two places you can create a bucket in the UI. 3. Enter a **Name** for the bucket. 4. Select when to **Delete Data**: - **Never** to retain data forever. - - **Older than** to choose a specific retention policy. + - **Older than** to choose a specific retention period. 5. Click **Create** to create the bucket. ## Create a bucket using the influx CLI diff --git a/content/influxdb/v2.0/organizations/buckets/update-bucket.md b/content/influxdb/v2.0/organizations/buckets/update-bucket.md index f9c3a6913..4964b2e46 100644 --- a/content/influxdb/v2.0/organizations/buckets/update-bucket.md +++ b/content/influxdb/v2.0/organizations/buckets/update-bucket.md @@ -1,7 +1,7 @@ --- title: Update a bucket seotitle: Update a bucket in InfluxDB -description: Update a bucket's name or retention policy in InfluxDB using the InfluxDB UI or the influx CLI. +description: Update a bucket's name or retention period in InfluxDB using the InfluxDB UI or the influx CLI. menu: influxdb_2_0: name: Update a bucket @@ -32,14 +32,14 @@ If you change a bucket name, be sure to update the bucket in the above places as 3. Review the information in the window that appears and click **I understand, let's rename my bucket**. 4. Update the bucket's name and click **Change Bucket Name**. -## Update a bucket's retention policy in the InfluxDB UI +## Update a bucket's retention period in the InfluxDB UI 1. In the navigation menu on the left, select **Data (Load Data)** > **Buckets**. {{< nav-icon "data" >}} 2. Click **Settings** next to the bucket you want to update. -3. In the window that appears, edit the bucket's retention policy. +3. In the window that appears, edit the bucket's retention period. 4. Click **Save Changes**. ## Update a bucket using the influx CLI @@ -60,9 +60,9 @@ influx bucket update -i -o -n influx bucket update -i 034ad714fdd6f000 -o my-org -n my-new-bucket ``` -##### Update a bucket's retention policy +##### Update a bucket's retention period -Valid retention policy duration units are nanoseconds (`ns`), microseconds (`us` or `µs`), milliseconds (`ms`), seconds (`s`), minutes (`m`), hours (`h`), days (`d`), or weeks (`w`). +Valid retention period duration units are nanoseconds (`ns`), microseconds (`us` or `µs`), milliseconds (`ms`), seconds (`s`), minutes (`m`), hours (`h`), days (`d`), or weeks (`w`). ```sh # Syntax diff --git a/content/influxdb/v2.0/process-data/common-tasks/downsample-data.md b/content/influxdb/v2.0/process-data/common-tasks/downsample-data.md index c5d084182..ac8086618 100644 --- a/content/influxdb/v2.0/process-data/common-tasks/downsample-data.md +++ b/content/influxdb/v2.0/process-data/common-tasks/downsample-data.md @@ -74,7 +74,6 @@ Once your task is ready, see [Create a task](/influxdb/v2.0/process-data/manage- ## Things to consider - If there is a chance that data may arrive late, specify an `offset` in your task options long enough to account for late-data. -- If running a task against a bucket with a finite retention policy, do not schedule - tasks to run too closely to the end of the retention policy. - Always provide a "cushion" for downsampling tasks to complete before the data - is dropped by the retention policy. +- If running a task against a bucket with a finite retention period, + schedule tasks to run prior to the end of the retention period to let + downsampling tasks complete before data outside of the retention period is dropped. diff --git a/content/influxdb/v2.0/process-data/manage-tasks/run-task.md b/content/influxdb/v2.0/process-data/manage-tasks/run-task.md index d1c2b69a4..1a45dd7d2 100644 --- a/content/influxdb/v2.0/process-data/manage-tasks/run-task.md +++ b/content/influxdb/v2.0/process-data/manage-tasks/run-task.md @@ -10,7 +10,8 @@ menu: weight: 203 related: - /influxdb/v2.0/reference/cli/influx/task/run - - /influxdb/v2.0/reference/cli/influx/task/retry + - /influxdb/v2.0/reference/cli/influx/task/run/retry + - /influxdb/v2.0/reference/cli/influx/task/retry-failed --- InfluxDB data processing tasks generally run in defined intervals or at a specific time, @@ -32,6 +33,8 @@ Use the `influx task run retry` command to run a task. To run a task from the `influx` CLI, the task must have already run at least once. {{% /note %}} +{{< cli/influx-creds-note >}} + ```sh # List all tasks to find the ID of the task to run influx task list @@ -42,3 +45,22 @@ influx task run list --task-id=0000000000000000 # Use the task ID and run ID to retry a run influx task run retry --task-id=0000000000000000 --run-id=0000000000000000 ``` + +### Retry failed task runs +Use the [`influx task retry-failed` command](/influxdb/v2.0/reference/cli/influx/task/retry-failed/) +to retry failed task runs. + +```sh +# Retry failed tasks for a specific task +influx task retry-failed \ + --id 0000000000000000 + +# Print information about runs that will be retried +influx task retry-failed \ + --dry-run + +# Retry failed task runs that occurred in a specific time range +influx task retry-failed \ + --after 2021-01-01T00:00:00Z \ + --before 2021-01-01T23:59:59Z +``` diff --git a/content/influxdb/v2.0/process-data/manage-tasks/task-run-history.md b/content/influxdb/v2.0/process-data/manage-tasks/task-run-history.md index a5e2b85d8..5ebfe10ba 100644 --- a/content/influxdb/v2.0/process-data/manage-tasks/task-run-history.md +++ b/content/influxdb/v2.0/process-data/manage-tasks/task-run-history.md @@ -8,7 +8,9 @@ menu: parent: Manage tasks weight: 203 related: - - /influxdb/v2.0/reference/cli/influx/task/run/find + - /influxdb/v2.0/reference/cli/influx/task/list + - /influxdb/v2.0/reference/cli/influx/task/run/list + - /influxdb/v2.0/reference/cli/influx/task/retry-failed --- When an InfluxDB task runs, a "run" record is created in the task's history. @@ -44,3 +46,22 @@ influx task run list --task-id=0000000000000000 {{% note %}} Detailed run logs are not currently available in the `influx` CLI. {{% /note %}} + +## Retry failed task runs +Use the [`influx task retry-failed` command](/influxdb/v2.0/reference/cli/influx/task/retry-failed/) +to retry failed task runs. + +```sh +# Retry failed tasks for a specific task +influx task retry-failed \ + --id 0000000000000000 + +# Print information about runs that will be retried +influx task retry-failed \ + --dry-run + +# Retry failed task runs that occurred in a specific time range +influx task retry-failed \ + --after 2021-01-01T00:00:00Z \ + --before 2021-01-01T23:59:59Z +``` diff --git a/content/influxdb/v2.0/query-data/flux/custom-functions/_index.md b/content/influxdb/v2.0/query-data/flux/custom-functions/_index.md index 1f1776696..164818695 100644 --- a/content/influxdb/v2.0/query-data/flux/custom-functions/_index.md +++ b/content/influxdb/v2.0/query-data/flux/custom-functions/_index.md @@ -1,6 +1,6 @@ --- title: Create custom Flux functions -description: Create your own custom Flux functions to transform and manipulate data. +description: Create your own custom Flux functions to transform and operate on data. list_title: Custom functions influxdb/v2.0/tags: [functions, custom, flux] menu: diff --git a/content/influxdb/v2.0/query-data/optimize-queries.md b/content/influxdb/v2.0/query-data/optimize-queries.md index 252ec0b56..f958f6858 100644 --- a/content/influxdb/v2.0/query-data/optimize-queries.md +++ b/content/influxdb/v2.0/query-data/optimize-queries.md @@ -12,29 +12,56 @@ influxdb/v2.0/tags: [query] Optimize your Flux queries to reduce their memory and compute (CPU) requirements. -- [Start queries with pushdown functions](#start-queries-with-pushdown-functions) +- [Start queries with pushdowns](#start-queries-with-pushdowns) + - [Avoid processing filters inline](#avoid-processing-filters-inline) - [Avoid short window durations](#avoid-short-window-durations) - [Use "heavy" functions sparingly](#use-heavy-functions-sparingly) +- [Use set() instead of map() when possible](#use-set-instead-of-map-when-possible) - [Balance time range and data precision](#balance-time-range-and-data-precision) +- [Measure query performance with Flux profilers](#measure-query-performance-with-flux-profilers) -## Start queries with pushdown functions -Some Flux functions can push their data manipulation down to the underlying -data source rather than storing and manipulating data in memory. -These are known as "pushdown" functions and using them correctly can greatly -reduce the amount of memory necessary to run a query. +## Start queries with pushdowns +**Pushdowns** are functions or function combinations that push data operations to the underlying data source rather than operating on data in memory. Start queries with pushdowns to improve query performance. Once a non-pushdown function runs, Flux pulls data into memory and runs all subsequent operations there. +#### Pushdown functions and function combinations +Most pushdowns are supported when querying an InfluxDB 2.0 or InfluxDB Cloud data source. As shown in the following table, a handful of pushdowns are not supported in InfluxDB 2.0. -#### Pushdown functions -- [range()](/influxdb/v2.0/reference/flux/stdlib/built-in/transformations/range/) -- [filter()](/influxdb/v2.0/reference/flux/stdlib/built-in/transformations/filter/) - +| Functions | InfluxDB 2.0 | InfluxDB Cloud | +|:--------- |:------------: |:--------------: | +| **count()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **drop()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **duplicate()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **filter()** {{% req " \*" %}} | {{< icon "check" >}} | {{< icon "check" >}} | +| **fill()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **first()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **keep()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **last()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **max()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **mean()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **min()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **range()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **rename()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **sum()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **window()** | {{< icon "check" >}} | {{< icon "check" >}} | +| _Function combinations_ | | | +| **group()** \|> **count()** | | {{< icon "check" >}} | +| **group()** \|> **first()** | | {{< icon "check" >}} | +| **group()** \|> **last()** | | {{< icon "check" >}} | +| **group()** \|> **max()** | | {{< icon "check" >}} | +| **group()** \|> **min()** | | {{< icon "check" >}} | +| **group()** \|> **sum()** | | {{< icon "check" >}} | +| **window()** \|> **count()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **window()** \|> **first()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **window()** \|> **last()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **window()** \|> **max()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **window()** \|> **min()** | {{< icon "check" >}} | {{< icon "check" >}} | +| **window()** \|> **sum()** | {{< icon "check" >}} | {{< icon "check" >}} | -Use pushdown functions at the beginning of your query. +{{% caption %}} +{{< req "\*" >}} **filter()** only pushes down when all parameter values are static. +See [Avoid processing filters inline](#avoid-processing-filters-inline). +{{% /caption %}} + +Use pushdown functions and function combinations at the beginning of your query. Once a non-pushdown function runs, Flux pulls data into memory and runs all subsequent operations there. @@ -42,12 +69,41 @@ subsequent operations there. ```js from(bucket: "example-bucket") |> range(start: -1h) // - |> filter(fn: (r) => r.sensor == "abc123") // Pushed to the data source - - |> group(columns: ["_field", "host"]) // - |> aggregateWindow(every: 5m, fn: max) // Run in memory + |> filter(fn: (r) => r.sensor == "abc123") // + |> group(columns: ["_field", "host"]) // Pushed to the data source + |> aggregateWindow(every: 5m, fn: max) // |> filter(fn: (r) => r._value >= 90.0) // - |> top(n: 10) // + + |> top(n: 10) // Run in memory +``` + +### Avoid processing filters inline +Avoid using mathematic operations or string manipulation inline to define data filters. +Processing filter values inline prevents `filter()` from pushing its operation down +to the underlying data source, so data returned by the +previous function loads into memory. +This often results in a significant performance hit. + +For example, the following query uses [dashboard variables](/influxdb/v2.0/visualize-data/variables/) +and string concatenation to define a region to filter by. +Because `filter()` uses string concatenation inline, it can't push its operation +to the underlying data source and loads all data returned from `range()` into memory. + +```js +from(bucket: "example-bucket") + |> range(start: -1h) + |> filter(fn: (r) => r.region == v.provider + v.region) +``` + +To dynamically set filters and maintain the pushdown ability of the `filter()` function, +use variables to define filter values outside of `filter()`: + +```js +region = v.provider + v.region + +from(bucket: "example-bucket") + |> range(start: -1h) + |> filter(fn: (r) => r.region == region) ``` ## Avoid short window durations @@ -62,7 +118,6 @@ Consider their necessity in your data processing before using them: - [map()](/influxdb/v2.0/reference/flux/stdlib/built-in/transformations/map/) - [reduce()](/influxdb/v2.0/reference/flux/stdlib/built-in/transformations/aggregates/reduce/) -- [window()](/influxdb/v2.0/reference/flux/stdlib/built-in/transformations/window/) - [join()](/influxdb/v2.0/reference/flux/stdlib/built-in/transformations/join/) - [union()](/influxdb/v2.0/reference/flux/stdlib/built-in/transformations/union/) - [pivot()](/influxdb/v2.0/reference/flux/stdlib/built-in/transformations/pivot/) @@ -71,10 +126,60 @@ Consider their necessity in your data processing before using them: We're continually optimizing Flux and this list may not represent its current state. {{% /note %}} +## Use set() instead of map() when possible +[`set()`](/influxdb/v2.0/reference/flux/stdlib/built-in/transformations/set/), +[`experimental.set()`](/influxdb/v2.0/reference/flux/stdlib/experimental/set/), +and [`map`](/influxdb/v2.0/reference/flux/stdlib/built-in/transformations/map/) +can each set columns value in data, however **set** functions have performance +advantages over `map()`. + +Use the following guidelines to determine which to use: + +- If setting a column value to a predefined, static value, use `set()` or `experimental.set()`. +- If dynamically setting a column value using **existing row data**, use `map()`. + +#### Set a column value to a static value +The following queries are functionally the same, but using `set()` is more performant than using `map()`. + +```js +data + |> map(fn: (r) => ({ r with foo: "bar" })) + +// Recommended +data + |> set(key: "foo", as: "bar" })) +``` + +#### Dynamically set a column value using existing row data +```js +data + |> map(fn: (r) => ({ r with foo: r.bar })) +``` + ## Balance time range and data precision To ensure queries are performant, balance the time range and the precision of your data. For example, if you query data stored every second and request six months worth of data, results would include ≈15.5 million points per series. Depending on the number of series returned after `filter()`([cardinality](/influxdb/v2.0/reference/glossary/#series-cardinality)), this can quickly become many billions of points. -Flux must store these points in memory to generate a response. Use [pushdown functions](#pushdown-functions) to optimize how many points are stored in memory. +Flux must store these points in memory to generate a response. Use [pushdowns](#pushdown-functions-and-function-combinations) to optimize how many points are stored in memory. To query data over large periods of time, create a task to [downsample data](/influxdb/v2.0/process-data/common-tasks/downsample-data/), and then query the downsampled data instead. + +## Measure query performance with Flux profilers +Use the [Flux Profiler package](/influxdb/v2.0/reference/flux/stdlib/profiler/) +to measure query performance and append performance metrics to your query output. +The following Flux profilers are available: + +- **query**: provides statistics about the execution of an entire Flux script. +- **operator**: provides statistics about each operation in a query. + +Import the `profiler` package and enable profilers with the `profile.enabledProfilers` option. + +```js +import "profiler" + +option profiler.enabledProfilers = ["query", "operator"] + +// Query to profile +``` + +For more information about Flux profilers, see the [Flux Profiler package](/influxdb/v2.0/reference/flux/stdlib/profiler/). diff --git a/content/influxdb/v2.0/reference/api/influxdb-1x/_index.md b/content/influxdb/v2.0/reference/api/influxdb-1x/_index.md index 4cc954a31..ef477907a 100644 --- a/content/influxdb/v2.0/reference/api/influxdb-1x/_index.md +++ b/content/influxdb/v2.0/reference/api/influxdb-1x/_index.md @@ -66,8 +66,8 @@ Authorization: Token mYSuP3rs3cREtT0k3N The compatibility API supports InfluxQL, with the following caveats: - The `INTO` clause (e.g. `SELECT ... INTO ...`) is not supported. -- With the exception of [`DELETE`](/influxdb/v1.8/query_language/manage-database/#delete-series-with-delete) and - [`DROP MEASUREMENT`](/influxdb/v1.8/query_language/manage-database/#delete-measurements-with-drop-measurement) queries, which are still allowed, +- With the exception of [`DELETE`](/{{< latest "influxdb" "v1" >}}/query_language/manage-database/#delete-series-with-delete) and + [`DROP MEASUREMENT`](/{{< latest "influxdb" "v1" >}}/query_language/manage-database/#delete-measurements-with-drop-measurement) queries, which are still allowed, InfluxQL database management commands are not supported. ## Compatibility endpoints diff --git a/content/influxdb/v2.0/reference/cli/influx/_index.md b/content/influxdb/v2.0/reference/cli/influx/_index.md index f1028427a..5bf185a79 100644 --- a/content/influxdb/v2.0/reference/cli/influx/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/_index.md @@ -65,7 +65,6 @@ For more information about managing CLI configurations, see the | [task](/influxdb/v2.0/reference/cli/influx/task) | Task management commands | | [telegrafs](/influxdb/v2.0/reference/cli/influx/telegrafs) | Telegraf configuration management commands | | [template](/influxdb/v2.0/reference/cli/influx/template) | Summarize and validate an InfluxDB template | -| [transpile](/influxdb/v2.0/reference/cli/influx/transpile) | Manually transpile an InfluxQL query to Flux | | [user](/influxdb/v2.0/reference/cli/influx/user) | User management commands | | [v1](/influxdb/v2.0/reference/cli/influx/v1) | Work with the v1 compatibility API | | [version](/influxdb/v2.0/reference/cli/influx/version) | Print the influx CLI version | diff --git a/content/influxdb/v2.0/reference/cli/influx/backup/_index.md b/content/influxdb/v2.0/reference/cli/influx/backup/_index.md index a9eeb4ea9..274fc63af 100644 --- a/content/influxdb/v2.0/reference/cli/influx/backup/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/backup/_index.md @@ -9,6 +9,7 @@ weight: 101 influxdb/v2.0/tags: [backup] related: - /influxdb/v2.0/backup-restore/backup/ + - /influxdb/v2.0/reference/cli/influx/restore/ - /influxdb/v2.0/reference/cli/influx/#provide-required-authentication-credentials, influx CLI—Provide required authentication credentials - /influxdb/v2.0/reference/cli/influx/#flag-patterns-and-conventions, influx CLI—Flag patterns and conventions --- diff --git a/content/influxdb/v2.0/reference/cli/influx/bucket/create.md b/content/influxdb/v2.0/reference/cli/influx/bucket/create.md index 48b6e8a9f..939965b2b 100644 --- a/content/influxdb/v2.0/reference/cli/influx/bucket/create.md +++ b/content/influxdb/v2.0/reference/cli/influx/bucket/create.md @@ -10,6 +10,7 @@ aliases: - /influxdb/v2.0/reference/cli/influx/bucket/create/ related: - /influxdb/v2.0/organizations/buckets/create-bucket/ + - /influxdb/v2.0/reference/internals/shards/ - /influxdb/v2.0/reference/cli/influx/#provide-required-authentication-credentials, influx CLI—Provide required authentication credentials - /influxdb/v2.0/reference/cli/influx/#flag-patterns-and-conventions, influx CLI—Flag patterns and conventions --- @@ -22,21 +23,22 @@ influx bucket create [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| `-c` | `--active-config` | CLI configuration to use for command | string | | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-d` | `--description` | Bucket description | string | | -| `-h` | `--help` | Help for the `create` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | Bucket name | string | `INFLUX_BUCKET_NAME` | -| `-o` | `--org` | Organization name (mutually exclusive with `--org-id`) | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID (mutually exclusive with `--org`) | string | `INFLUX_ORG_ID` | -| `-r` | `--retention` | Duration bucket will retain data (0 is infinite, default is 0) | duration | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-d` | `--description` | Bucket description | string | | +| `-h` | `--help` | Help for the `create` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | Bucket name | string | `INFLUX_BUCKET_NAME` | +| `-o` | `--org` | Organization name (mutually exclusive with `--org-id`) | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID (mutually exclusive with `--org`) | string | `INFLUX_ORG_ID` | +| `-r` | `--retention` | Duration bucket retains data (0 is infinite, default is 0) | duration | | +| | `--shard-group-duration` | Bucket shard group duration (OSS only) | string | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | {{% note %}} Valid `--retention` units are nanoseconds (`ns`), microseconds (`us` or `µs`), @@ -50,6 +52,7 @@ milliseconds (`ms`), seconds (`s`), minutes (`m`), hours (`h`), days (`d`), and - [Create a bucket with infinite data retention](#create-a-bucket-with-infinite-data-retention) - [Create a bucket that retains data for 30 days](#create-a-bucket-that-retains-data-for-30-days) - [Create a bucket with a description](#create-a-bucket-with-a-description) +- [Create a bucket with a custom shard group duration](#create-a-bucket-with-a-custom-shard-group-duration) ##### Create a bucket with infinite data retention ```sh @@ -69,3 +72,14 @@ influx bucket create \ --name example-bucket \ --description "Example bucket description" ``` + +##### Create a bucket with a custom shard group duration +Custom shard group durations are only supported in **InfluxDB OSS**. +The shard group duration must be shorter than the bucket's retention period. For more information, see [InfluxDB shards and shard groups](/influxdb/v2.0/reference/internals/shards/). + +```sh +influx bucket create \ + --name example-bucket \ + --retention 30d \ + --shard-group-duration 2d +``` diff --git a/content/influxdb/v2.0/reference/cli/influx/bucket/update.md b/content/influxdb/v2.0/reference/cli/influx/bucket/update.md index 630286641..0dd5c54c9 100644 --- a/content/influxdb/v2.0/reference/cli/influx/bucket/update.md +++ b/content/influxdb/v2.0/reference/cli/influx/bucket/update.md @@ -8,6 +8,11 @@ menu: weight: 201 aliases: - /influxdb/v2.0/reference/cli/influx/bucket/update/ +related: + - /influxdb/v2.0/organizations/buckets/update-bucket/ + - /influxdb/v2.0/reference/internals/shards/ + - /influxdb/v2.0/reference/cli/influx/#provide-required-authentication-credentials, influx CLI—Provide required authentication credentials + - /influxdb/v2.0/reference/cli/influx/#flag-patterns-and-conventions, influx CLI—Flag patterns and conventions --- The `influx bucket update` command updates information associated with buckets in InfluxDB. @@ -18,20 +23,21 @@ influx bucket update [flags] ``` ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:---- |:--- |:----------- |:----------: |:------------------ | -| `-c` | `--active-config` | CLI configuration to use for command | string | | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | -| `-d` | `--description` | Bucket description | string | | -| `-h` | `--help` | Help for the `update` command | | | -| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | -| `-i` | `--id` | ({{< req >}}) Bucket ID | string | | -| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | -| `-n` | `--name` | New bucket name | string | `INFLUX_BUCKET_NAME` | -| `-r` | `--retention` | New duration bucket will retain data | duration | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| `-d` | `--description` | Bucket description | string | | +| `-h` | `--help` | Help for the `update` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | +| `-i` | `--id` | ({{< req >}}) Bucket ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-n` | `--name` | New bucket name | string | `INFLUX_BUCKET_NAME` | +| `-r` | `--retention` | New duration bucket will retain data | duration | | +| | `--shard-group-duration` | Custom shard group duration for the bucket (OSS only) | string | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | {{% note %}} Valid `--retention` units are nanoseconds (`ns`), microseconds (`us` or `µs`), @@ -45,13 +51,23 @@ milliseconds (`ms`), seconds (`s`), minutes (`m`), hours (`h`), days (`d`), and ##### Update the name of a bucket ```sh influx bucket update \ - --id 06c86c40a9f36000 + --id 06c86c40a9f36000 \ --name new-bucket-name ``` ##### Update the retention period of a bucket ```sh influx bucket update \ - --id 06c86c40a9f36000 + --id 06c86c40a9f36000 \ --retention 90d -``` \ No newline at end of file +``` + +##### Update the shard group duration of a bucket +Custom shard group durations are only supported in **InfluxDB OSS**. +The shard group duration must be shorter than the buckets retention period. + +```sh +influx bucket update \ + --id 06c86c40a9f36000 \ + --shard-group-duration 2d +``` diff --git a/content/influxdb/v2.0/reference/cli/influx/export/all.md b/content/influxdb/v2.0/reference/cli/influx/export/all.md index 9c2b13cf2..ac4e0d69b 100644 --- a/content/influxdb/v2.0/reference/cli/influx/export/all.md +++ b/content/influxdb/v2.0/reference/cli/influx/export/all.md @@ -20,9 +20,9 @@ _For detailed examples of exporting InfluxDB templates, see [Create an InfluxDB template](/influxdb/v2.0/influxdb-templates/create/)._ {{% note %}} -To export resources as a template, you must use the **Admin token** created for -the initial InfluxDB user or an **All Access token**. -For information about creating an All Access token, see [Create an authentication token](/influxdb/v2.0/security/tokens/create-token/). +To export resources as a template, you must use the **Operator token** created for +the initial InfluxDB user or an **All-Access token**. +For information about creating an All-Access token, see [Create an authentication token](/influxdb/v2.0/security/tokens/create-token/). {{% /note %}} ## Usage diff --git a/content/influxdb/v2.0/reference/cli/influx/export/stack.md b/content/influxdb/v2.0/reference/cli/influx/export/stack.md index 5ba3dcddc..43d9c2001 100644 --- a/content/influxdb/v2.0/reference/cli/influx/export/stack.md +++ b/content/influxdb/v2.0/reference/cli/influx/export/stack.md @@ -17,9 +17,9 @@ The `influx export stack` command exports all resources associated with a stack All `metadata.name` fields remain the same. {{% note %}} -To export resources as a template, you must use the **Admin token** created for -the initial InfluxDB user or an **All Access token**. -For information about creating an All Access token, see [Create an authentication token](/influxdb/v2.0/security/tokens/create-token/). +To export resources as a template, you must use the **Operator token** created for +the initial InfluxDB user or an **All-Access token**. +For information about creating an All-Access token, see [Create an authentication token](/influxdb/v2.0/security/tokens/create-token/). {{% /note %}} ## Usage diff --git a/content/influxdb/v2.0/reference/cli/influx/query/_index.md b/content/influxdb/v2.0/reference/cli/influx/query/_index.md index 0869fdc58..6b4c83299 100644 --- a/content/influxdb/v2.0/reference/cli/influx/query/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/query/_index.md @@ -45,6 +45,7 @@ drop columns such as `_start` and `_stop` to optimize the download file size. | | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | | `-o` | `--org` | Organization name (mutually exclusive with `--org-id`) | string | `INFLUX_ORG` | | | `--org-id` | Organization ID (mutually exclusive with `--org`) | string | `INFLUX_ORG_ID` | +| `-p` | `--profilers` | Flux query profilers to enable (comma-separated) | string | | | `-r` | `--raw` | Output raw query results (annotated CSV) | | | | | `--skip-verify` | Skip TLS certificate verification | | | | `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | @@ -56,6 +57,7 @@ drop columns such as `_start` and `_stop` to optimize the download file size. - [Query InfluxDB with a Flux string](#query-influxdb-with-a-flux-string) - [Query InfluxDB using a Flux file](#query-influxdb-with-a-flux-file) - [Query InfluxDB and return annotated CSV](#query-influxdb-and-return-annotated-csv) +- [Query InfluxDB and append query profile data to results](#query-influxdb-and-append-query-profile-data-to-results) ##### Query InfluxDB with a Flux string ```sh @@ -70,4 +72,13 @@ influx query --file /path/to/example-query.flux ##### Query InfluxDB and return annotated CSV ```sh influx query 'from(bucket:"example-bucket") |> range(start:-1m)' --raw +``` + +##### Query InfluxDB and append query profile data to results +_For more information about profilers, see [Flux profilers](/influxdb/v2.0/reference/flux/stdlib/profiler/#available-profilers)._ + +```sh +influx query \ + --profilers operator,query \ + 'from(bucket:"example-bucket") |> range(start:-1m)' ``` \ No newline at end of file diff --git a/content/influxdb/v2.0/reference/cli/influx/restore/index.md b/content/influxdb/v2.0/reference/cli/influx/restore/index.md index 90ca2fb8b..57d8712d5 100644 --- a/content/influxdb/v2.0/reference/cli/influx/restore/index.md +++ b/content/influxdb/v2.0/reference/cli/influx/restore/index.md @@ -10,6 +10,7 @@ alias: - /influxdb/v2.0/reference/cli/influxd/restore/ related: - /influxdb/v2.0/backup-restore/restore/ + - /influxdb/v2.0/reference/cli/influx/backup/ - /influxdb/v2.0/reference/cli/influx/#provide-required-authentication-credentials, influx CLI—Provide required authentication credentials - /influxdb/v2.0/reference/cli/influx/#flag-patterns-and-conventions, influx CLI—Flag patterns and conventions --- @@ -25,6 +26,14 @@ If the restore process fails, InfluxDB preserves the data in the temporary locat _For information about recovering from a failed restore process, see [Restore data](/influxdb/v2.0/backup-restore/restore/#recover-from-a-failed-restore)._ +{{% note %}} +#### Cannot restore to existing buckets +The `influx restore` command cannot restore data to existing buckets. +Use the `--new-bucket` flag to create a bucket with a new name and restore data into it. +To restore data and retain bucket names, [delete existing buckets](/influxdb/v2.0/organizations/buckets/delete-bucket/) +and then begin the restore process. +{{% /note %}} + ## Usage ``` @@ -56,25 +65,30 @@ influx restore [flags] {{< cli/influx-creds-note >}} +- [Restore backup data](#restore-backup-data) +- [Restore backup data for a specific bucket into a new bucket](#restore-backup-data-for-a-specific-bucket-into-a-new-bucket) - [Restore and replace all data](#restore-and-replace-all-data) -- [Restore backup data to an existing bucket](#restore-backup-data-to-an-existing-bucket) -- [Create a bucket and restore data to it](#create-a-bucket-and-restore-data-to-it) -##### Restore and replace all data +##### Restore backup data ```sh -influx restore --full --input /path/to/backup/dir/ +influx restore \ + --input /path/to/backup/dir/ ``` -##### Restore backup data to an existing bucket +##### Restore backup data for a specific bucket into a new bucket ```sh influx restore \ --bucket example-bucket \ - --input /path/to/backup/dir/ -``` - -##### Create a bucket and restore data to it -```sh -influx restore \ --new-bucket new-example-bucket \ --input /path/to/backup/dir/ ``` + +##### Restore and replace all data +{{% note %}} +`influx restore --full` restores all time series data _and_ InfluxDB key-value +data such as tokens, dashboards, users, etc. +{{% /note %}} + +```sh +influx restore --full --input /path/to/backup/dir/ +``` diff --git a/content/influxdb/v2.0/reference/cli/influx/setup/_index.md b/content/influxdb/v2.0/reference/cli/influx/setup/_index.md index 25e5f5c55..1c23e7247 100644 --- a/content/influxdb/v2.0/reference/cli/influx/setup/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/setup/_index.md @@ -19,7 +19,7 @@ The `influx setup` command walks through the initial InfluxDB OSS setup process, creating a default user, organization, and bucket. {{% note %}} -The **Admin token** created in the InfluxDB setup process has full read and write +The **Operator token** created in the InfluxDB setup process has full read and write access to all organizations in the database. {{% /note %}} diff --git a/content/influxdb/v2.0/reference/cli/influx/task/_index.md b/content/influxdb/v2.0/reference/cli/influx/task/_index.md index 118d83e43..7455f9fdc 100644 --- a/content/influxdb/v2.0/reference/cli/influx/task/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/task/_index.md @@ -23,14 +23,15 @@ influx task [command] ``` ### Subcommands -| Subcommand | Description | -|:---------- |:----------- | -| [create](/influxdb/v2.0/reference/cli/influx/task/create) | Create task | -| [delete](/influxdb/v2.0/reference/cli/influx/task/delete) | Delete task | -| [list](/influxdb/v2.0/reference/cli/influx/task/list) | List tasks | -| [log](/influxdb/v2.0/reference/cli/influx/task/log) | Log related commands | -| [run](/influxdb/v2.0/reference/cli/influx/task/run) | Run related commands | -| [update](/influxdb/v2.0/reference/cli/influx/task/update) | Update task | +| Subcommand | Description | +|:---------- |:----------- | +| [create](/influxdb/v2.0/reference/cli/influx/task/create) | Create task | +| [delete](/influxdb/v2.0/reference/cli/influx/task/delete) | Delete task | +| [list](/influxdb/v2.0/reference/cli/influx/task/list) | List tasks | +| [log](/influxdb/v2.0/reference/cli/influx/task/log) | Log related commands | +| [retry-failed](/influxdb/v2.0/reference/cli/influx/task/retry-failed) | Retry failed task runs | +| [run](/influxdb/v2.0/reference/cli/influx/task/run) | Run related commands | +| [update](/influxdb/v2.0/reference/cli/influx/task/update) | Update task | ### Flags | Flag | | Description | diff --git a/content/influxdb/v2.0/reference/cli/influx/task/retry-failed.md b/content/influxdb/v2.0/reference/cli/influx/task/retry-failed.md new file mode 100644 index 000000000..7c1a7da1f --- /dev/null +++ b/content/influxdb/v2.0/reference/cli/influx/task/retry-failed.md @@ -0,0 +1,91 @@ +--- +title: influx task retry-failed +description: The `influx task retry-failed` command retries failed InfluxDB task runs. +menu: + influxdb_2_0_ref: + name: influx task retry-failed + parent: influx task +weight: 201 +--- + +The `influx task retry-failed` command retries failed InfluxDB task runs. +## Usage +``` +influx task retry-failed [flags] +``` + +## Flags +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:---- |:--- |:----------- |:----------: |:------------------ | +| | `--after` | Retry task runs that occurred after this time (RFC3339 timestamp) | string | | +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string |`INFLUX_CONFIGS_PATH` | +| | `--before` | Retry task runs that occurred before this time (RFC3339 timestamp) | string | | +| | `--dry-run` | Print information about task runs that would be retried | | | +| `-h` | `--help` | Help for the `list` command | | | +| | `--hide-headers` | Hide table headers (default `false`) | | `INFLUX_HIDE_HEADERS` | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | +| `-i` | `--id` | Task ID | string | | +| | `--json` | Output data as JSON (default `false`) | | `INFLUX_OUTPUT_JSON` | +| `-o` | `--org` | Task organization name | string | `INFLUX_ORG` | +| | `--org-id` | Task organization ID | string | `INFLUX_ORG_ID` | +| | `--run-limit` | Maximum number of failed runs to retry per task (`1-500`, default `100`) | integer | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| | `--task-limit` | Maximum number of tasks to retry failed runs for (`1-500`, default `100`) | integer | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | + +## Examples + +{{< cli/influx-creds-note >}} + +- [Retry failed task runs for a specific task ID](#retry-failed-task-runs-for-a-specific-task-id) +- [Retry failed task runs that occurred before a specific time](#retry-failed-task-runs-that-occurred-before-a-specific-time) +- [Retry failed task runs that occurred after a specific time](#retry-failed-task-runs-that-occurred-after-a-specific-time) +- [Retry failed task runs that occurred in a specific time range](#retry-failed-task-runs-that-occurred-in-a-specific-time-range) +- [Retry failed runs for a limited number of tasks](#retry-failed-runs-for-a-limited-number-of-tasks) +- [Retry a limited number of failed runs for a task](#retry-a-limited-number-of-failed-runs-for-a-task) +- [Print information about runs that will be retried](#print-information-about-runs-that-will-be-retried) + +##### Retry failed task runs for a specific task ID +```sh +influx task retry-failed \ + --id 0Xx0oox00XXoxxoo1 +``` + +##### Retry failed task runs that occurred before a specific time +```sh +influx task retry-failed \ + --before 2021-01-01T00:00:00Z +``` + +##### Retry failed task runs that occurred after a specific time +```sh +influx task retry-failed \ + --after 2021-01-01T00:00:00Z +``` + +##### Retry failed task runs that occurred in a specific time range +```sh +influx task retry-failed \ + --after 2021-01-01T00:00:00Z \ + --before 2021-01-01T23:59:59Z +``` + +##### Retry failed runs for a limited number of tasks +```sh +influx task retry-failed \ + --task-limit 5 +``` + +##### Retry a limited number of failed runs for a task +```sh +influx task retry-failed \ + --id 0Xx0oox00XXoxxoo1 \ + --run-limit 5 +``` + +##### Print information about runs that will be retried +```sh +influx task retry-failed \ + --dry-run +``` diff --git a/content/influxdb/v2.0/reference/cli/influx/transpile/_index.md b/content/influxdb/v2.0/reference/cli/influx/transpile/_index.md index be611dbaf..48b7e10cf 100644 --- a/content/influxdb/v2.0/reference/cli/influx/transpile/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/transpile/_index.md @@ -2,17 +2,24 @@ title: influx transpile description: > The `influx transpile` command transpiles an InfluxQL query to Flux source code. -menu: - influxdb_2_0_ref: - name: influx transpile - parent: influx weight: 101 -influxdb/v2.0/tags: [influxql, flux] related: - /influxdb/v2.0/reference/cli/influx/#provide-required-authentication-credentials, influx CLI—Provide required authentication credentials - /influxdb/v2.0/reference/cli/influx/#flag-patterns-and-conventions, influx CLI—Flag patterns and conventions --- +{{% warn %}} +### Removed in InfluxDB OSS 2.0.5 +The `influx transpile` command was removed in **InfluxDB 2.0.5**. +[Use InfluxQL to query InfluxDB 2.0](/influxdb/v2.0/query-data/influxql/). +For information about manually converting InfluxQL queries to Flux, see: + +- [Get started with Flux](/influxdb/v2.0/query-data/get-started/) +- [Query data with Flux](/influxdb/v2.0/query-data/flux/) +- [Migrate continuous queries to Flux tasks](/influxdb/%762.0/upgrade/v1-to-v2/migrate-cqs/) + +{{% /warn %}} + The `influx transpile` command transpiles an InfluxQL query to Flux source code. The transpiled query assumes the bucket name is `/` and includes absolute time ranges using the provided `--now` time. diff --git a/content/influxdb/v2.0/reference/cli/influx/write/_index.md b/content/influxdb/v2.0/reference/cli/influx/write/_index.md index 155351366..8d664c586 100644 --- a/content/influxdb/v2.0/reference/cli/influx/write/_index.md +++ b/content/influxdb/v2.0/reference/cli/influx/write/_index.md @@ -63,30 +63,31 @@ In **extended annotated CSV**, measurements, fields, and values and their types | [dryrun](/influxdb/v2.0/reference/cli/influx/write/dryrun) | Write to stdout instead of InfluxDB | ## Flags -| Flag | | Description | Input type | {{< cli/mapped >}} | -|:-----|:--------------------|:--------------------------------------------------------------------------------|:----------: |:----------------------| -| `-c` | `--active-config` | CLI configuration to use for command | string | | -| `-b` | `--bucket` | Bucket name (mutually exclusive with `--bucket-id`) | string | `INFLUX_BUCKET_NAME` | -| | `--bucket-id` | Bucket ID (mutually exclusive with `--bucket`) | string | `INFLUX_BUCKET_ID` | -| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string | `INFLUX_CONFIGS_PATH` | -| | `--debug` | Output errors to stderr | | | -| | `--encoding` | Character encoding of input (default `UTF-8`) | string | | -| | `--error-file` | Path to a file used for recording rejected row errors | string | | -| `-f` | `--file` | File to import | stringArray | | -| | `--format` | Input format (`lp` or `csv`, default `lp`) | string | | -| | `--header` | Prepend header line to CSV input data | string | | -| `-h` | `--help` | Help for the `write` command | | | -| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | -| | `--max-line-length` | Maximum number of bytes that can be read for a single line (default `16000000`) | integer | | -| `-o` | `--org` | Organization name (mutually exclusive with `--org-id`) | string | `INFLUX_ORG` | -| | `--org-id` | Organization ID (mutually exclusive with `--org`) | string | `INFLUX_ORG_ID` | -| `-p` | `--precision` | Precision of the timestamps (default `ns`) | string | `INFLUX_PRECISION` | -| | `--rate-limit` | Throttle write rate (examples: `5 MB / 5 min` or `1MB/s`). | string | | -| | `--skip-verify` | Skip TLS certificate verification | | | -| | `--skipHeader` | Skip first *n* rows of input data | integer | | -| | `--skipRowOnError` | Output CSV errors to stderr, but continue processing | | | -| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | -| `-u` | `--url` | URL to import data from | stringArray | | +| Flag | | Description | Input type | {{< cli/mapped >}} | +|:-----|:--------------------|:---------------------------------------------------------------------------------------------|:-----------:|:----------------------| +| `-c` | `--active-config` | CLI configuration to use for command | string | | +| `-b` | `--bucket` | Bucket name (mutually exclusive with `--bucket-id`) | string | `INFLUX_BUCKET_NAME` | +| | `--bucket-id` | Bucket ID (mutually exclusive with `--bucket`) | string | `INFLUX_BUCKET_ID` | +| | `--configs-path` | Path to `influx` CLI configurations (default `~/.influxdbv2/configs`) | string | `INFLUX_CONFIGS_PATH` | +| | `--compression` | Input compression (`none` or `gzip`, default is `none` unless input file ends with `.gz`.) | string | | +| | `--debug` | Output errors to stderr | | | +| | `--encoding` | Character encoding of input (default `UTF-8`) | string | | +| | `--error-file` | Path to a file used for recording rejected row errors | string | | +| `-f` | `--file` | File to import | stringArray | | +| | `--format` | Input format (`lp` or `csv`, default `lp`) | string | | +| | `--header` | Prepend header line to CSV input data | string | | +| `-h` | `--help` | Help for the `write` command | | | +| | `--host` | HTTP address of InfluxDB (default `http://localhost:8086`) | string | `INFLUX_HOST` | +| | `--max-line-length` | Maximum number of bytes that can be read for a single line (default `16000000`) | integer | | +| `-o` | `--org` | Organization name (mutually exclusive with `--org-id`) | string | `INFLUX_ORG` | +| | `--org-id` | Organization ID (mutually exclusive with `--org`) | string | `INFLUX_ORG_ID` | +| `-p` | `--precision` | Precision of the timestamps (default `ns`) | string | `INFLUX_PRECISION` | +| | `--rate-limit` | Throttle write rate (examples: `5 MB / 5 min` or `1MB/s`). | string | | +| | `--skip-verify` | Skip TLS certificate verification | | | +| | `--skipHeader` | Skip first *n* rows of input data | integer | | +| | `--skipRowOnError` | Output CSV errors to stderr, but continue processing | | | +| `-t` | `--token` | Authentication token | string | `INFLUX_TOKEN` | +| `-u` | `--url` | URL to import data from | stringArray | | ## Examples @@ -100,6 +101,7 @@ In **extended annotated CSV**, measurements, fields, and values and their types - [from a URL](#write-line-protocol-from-a-url) - [from multiple URLs](#write-line-protocol-from-multiple-urls) - [from multiple sources](#write-line-protocol-from-multiple-sources) +- [from a compressed file](#write-line-protocol-from-a-compressed-file) ###### Write CSV data @@ -111,7 +113,7 @@ In **extended annotated CSV**, measurements, fields, and values and their types - [from multiple URLs](#write-annotated-csv-data-from-multiple-urls) - [from multiple sources](#write-annotated-csv-data-from-multiple-sources) - [and prepend annotation headers](#prepend-csv-data-with-annotation-headers) - +- [from a compressed file](#write-annotated-csv-data-from-a-compressed-file) ### Line protocol @@ -163,6 +165,20 @@ influx write \ --url https://example.com/line-protocol-2.txt ``` +##### Write line protocol from a compressed file +```sh +# The influx CLI assumes files with the .gz extension use gzip compression +influx write \ + --bucket example-bucket \ + --file path/to/line-protocol.txt.gz + +# Specify gzip compression for gzipped files without the .gz extension +influx write \ + --bucket example-bucket \ + --file path/to/line-protocol.txt.comp \ + --compression gzip +``` + --- ### CSV @@ -247,4 +263,16 @@ influx write \ --file path/to/data.csv ``` +##### Write annotated CSV data from a compressed file +```sh +# The influx CLI assumes files with the .gz extension use gzip compression +influx write \ + --bucket example-bucket \ + --file path/to/data.csv.gz +# Specify gzip compression for gzipped files without the .gz extension +influx write \ + --bucket example-bucket \ + --file path/to/data.csv.comp \ + --compression gzip +``` diff --git a/content/influxdb/v2.0/reference/cli/influxd/inspect/export-lp.md b/content/influxdb/v2.0/reference/cli/influxd/inspect/export-lp.md index c0acc4956..4d5360e90 100644 --- a/content/influxdb/v2.0/reference/cli/influxd/inspect/export-lp.md +++ b/content/influxdb/v2.0/reference/cli/influxd/inspect/export-lp.md @@ -3,7 +3,7 @@ title: influxd inspect export-lp description: > The `influxd inspect export-lp` command exports all time series data in a bucket as line protocol. -influxdb/v2.0/tags: [inspect] +influxdb/v2.0/tags: [inspect, export] menu: influxdb_2_0_ref: parent: influxd inspect @@ -19,29 +19,56 @@ influxd inspect export-lp [flags] ``` ## Flags -| Flag | | Description | Input type | -|:---- |:--- |:----------- |:----------:| -| | `--bucket-id` | ({{< req >}}) Bucket ID | string | -| | `--compress` | Compress output with GZIP | | -| | `--end` | End time to export (RFC3339 format) | string | -| | `--engine-path` | ({{< req >}}) Path to persistent InfluxDB engine files | string | -| `-h` | `--help` | Help for the `export-lp` command. | | -| | `--log-level` | Log-level (`debug`, `info` _(default)_, or `error`) | string | -| | `--measurement` | Measurement name(s) to export | strings | -| | `--output-path` | ({{< req >}}) Output file path | string | -| | `--start` | Start time to export (RFC3339 format) | string | +| Flag | | Description | Input type | +|:---- |:--- |:----------- |:----------:| +| | `--bucket-id` | ({{< req >}}) Bucket ID | string | +| | `--compress` | Compress output with GZIP | | +| | `--end` | End time to export (RFC3339 format) | string | +| | `--engine-path` | ({{< req >}}) Path to persistent InfluxDB engine files | string | +| `-h` | `--help` | Help for the `export-lp` command. | | +| | `--log-level` | Log-level (`debug`, `info` _(default)_, or `error`) | string | +| | `--measurement` | Measurement name(s) to export | strings | +| | `--output-path` | ({{< req >}}) Output path (file path or stdout _(`-`)_) | string | +| | `--start` | Start time to export (RFC3339 format) | string | ## Examples +- [Export all data in a bucket as line protocol](#export-all-data-in-a-bucket-as-line-protocol) +- [Export data in measurements as line protocol](#export-data-in-measurements-as-line-protocol) +- [Export data in specified time range as line protocol](#export-data-in-specified-time-range-as-line-protocol) + ##### Export all data in a bucket as line protocol +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[To a file](#) +[To stdout](#) +{{% /code-tabs %}} +{{% code-tab-content %}} ```sh influxd inspect export-lp \ --bucket-id 12ab34cd56ef \ --engine-path ~/.influxdbv2/engine \ --output-path path/to/export.lp ``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sh +influxd inspect export-lp \ + --bucket-id 12ab34cd56ef \ + --engine-path ~/.influxdbv2/engine \ + --output-path - +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} ##### Export data in measurements as line protocol + +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[To a file](#) +[To stdout](#) +{{% /code-tabs %}} +{{% code-tab-content %}} ```sh # Export a single measurement influxd inspect export-lp \ @@ -57,8 +84,33 @@ influxd inspect export-lp \ --measurement example-measurement-1 example-measurement-2 \ --output-path path/to/export.lp ``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sh +# Export a single measurement +influxd inspect export-lp \ + --bucket-id 12ab34cd56ef \ + --engine-path ~/.influxdbv2/engine \ + --measurement example-measurement \ + --output-path - + +# Export multiple measurements +influxd inspect export-lp \ + --bucket-id 12ab34cd56ef \ + --engine-path ~/.influxdbv2/engine \ + --measurement example-measurement-1 example-measurement-2 \ + --output-path - +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} ##### Export data in specified time range as line protocol +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[To a file](#) +[To stdout](#) +{{% /code-tabs %}} +{{% code-tab-content %}} ```sh influxd inspect export-lp \ --bucket-id 12ab34cd56ef \ @@ -67,3 +119,15 @@ influxd inspect export-lp \ --end 2021-01-31T23:59:59Z \ --output-path path/to/export.lp ``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```sh +influxd inspect export-lp \ + --bucket-id 12ab34cd56ef \ + --engine-path ~/.influxdbv2/engine \ + --start 2021-01-01T00:00:00Z \ + --end 2021-01-31T23:59:59Z \ + --output-path - +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} diff --git a/content/influxdb/v2.0/reference/config-options.md b/content/influxdb/v2.0/reference/config-options.md index 49fda6e38..8c89356dd 100644 --- a/content/influxdb/v2.0/reference/config-options.md +++ b/content/influxdb/v2.0/reference/config-options.md @@ -98,15 +98,19 @@ To configure InfluxDB, use the following configuration options when starting the - [e2e-testing](#e2e-testing) - [engine-path](#engine-path) - [http-bind-address](#http-bind-address) +- [http-idle-timeout](#http-idle-timeout) +- [http-read-header-timeout](#http-read-header-timeout) +- [http-read-timeout](#http-read-timeout) +- [http-write-timeout](#http-write-timeout) - [influxql-max-select-buckets](#influxql-max-select-buckets) - [influxql-max-select-point](#influxql-max-select-point) - [influxql-max-select-series](#influxql-max-select-series) - [log-level](#log-level) +- [metrics-disabled](#metrics-disabled) - [nats-max-payload-bytes](#nats-max-payload-bytes) - [nats-port](#nats-port) -- [new-meta-store](#new-meta-store) -- [new-meta-store-read-only](#new-meta-store-read-only) - [no-tasks](#no-tasks) +- [pprof-disabled](#pprof-disabled) - [query-concurrency](#query-concurrency) - [query-initial-memory-bytes](#query-initial-memory-bytes) - [query-max-memory-bytes](#query-max-memory-bytes) @@ -132,6 +136,7 @@ To configure InfluxDB, use the following configuration options when starting the - [storage-validate-keys](#storage-validate-keys) - [storage-wal-fsync-delay](#storage-wal-fsync-delay) - [store](#store) +- [testing-always-allow-setup](#testing-always-allow-setup) - [tls-cert](#tls-cert) - [tls-key](#tls-key) - [tls-min-version](#tls-min-version) @@ -388,6 +393,214 @@ http-bind-address = ":8086" --- +### http-idle-timeout +Maximum duration the server should keep established connections alive while waiting for new requests. +Set to `0` for no timeout. + +**Default:** `3m0s` + +| influxd flag | Environment variable | Configuration key | +|:------------ |:-------------------- |:----------------- | +| `--http-idle-timeout` | `INFLUXD_HTTP_IDLE_TIMEOUT` | `http-idle-timeout` | + +###### influxd flag +```sh +influxd --http-idle-timeout=3m0s +``` + +###### Environment variable +```sh +export INFLUXD_HTTP_IDLE_TIMEOUT=3m0s +``` + +###### Configuration file +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[YAML](#) +[TOML](#) +[JSON](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```yml +http-idle-timeout: 3m0s +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```toml +http-idle-timeout = "3m0s" +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```json +{ + "http-idle-timeout": "3m0s" +} +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +--- + +### http-read-header-timeout +Maximum duration the server should try to read HTTP headers for new requests. +Set to `0` for no timeout. + +**Default:** `10s` + +| influxd flag | Environment variable | Configuration key | +|:------------ |:-------------------- |:----------------- | +| `--http-read-header-timeout` | `INFLUXD_HTTP_READ_HEADER_TIMEOUT` | `http-read-header-timeout` | + +###### influxd flag +```sh +influxd --http-read-header-timeout=10s +``` + +###### Environment variable +```sh +export INFLUXD_HTTP_READ_HEADER_TIMEOUT=10s +``` + +###### Configuration file +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[YAML](#) +[TOML](#) +[JSON](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```yml +http-read-header-timeout: 10s +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```toml +http-read-header-timeout = "10s" +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```json +{ + "http-read-header-timeout": "10s" +} +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +--- + +### http-read-timeout +Maximum duration the server should try to read the entirety of new requests. +Set to `0` for no timeout. + +**Default:** `0` + +{{% note %}} +#### Set timeouts specific to your workload +Although no `http-read-timeout` is set by default, we **strongly recommend** +setting a timeout specific to your workload. +HTTP timeouts protect against large amounts of open connections that could +potentially hurt performance. +{{% /note %}} + +| influxd flag | Environment variable | Configuration key | +|:------------ |:-------------------- |:----------------- | +| `--http-read-timeout` | `INFLUXD_HTTP_READ_TIMEOUT` | `http-read-timeout` | + +###### influxd flag +```sh +influxd --http-read-timeout=10s +``` + +###### Environment variable +```sh +export INFLUXD_HTTP_READ_TIMEOUT=10s +``` + +###### Configuration file +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[YAML](#) +[TOML](#) +[JSON](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```yml +http-read-timeout: 10s +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```toml +http-read-timeout = "10s" +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```json +{ + "http-read-timeout": "10s" +} +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +--- + +### http-write-timeout +Maximum duration the server should spend processing and responding to write requests. +Set to `0` for no timeout. + +**Default:** `0` + +{{% note %}} +#### Set timeouts specific to your workload +Although no `http-write-timeout` is set by default, we **strongly recommend** +setting a timeout specific to your workload. +HTTP timeouts protect against large amounts of open connections that could +potentially hurt performance. +{{% /note %}} + +| influxd flag | Environment variable | Configuration key | +|:------------ |:-------------------- |:----------------- | +| `--http-write-timeout` | `INFLUXD_HTTP_WRITE_TIMEOUT` | `http-write-timeout` | + +###### influxd flag +```sh +influxd --http-write-timeout=10s +``` + +###### Environment variable +```sh +export INFLUXD_HTTP_WRITE_TIMEOUT=10s +``` + +###### Configuration file +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[YAML](#) +[TOML](#) +[JSON](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```yml +http-write-timeout: 10s +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```toml +http-write-timeout = "10s" +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```json +{ + "http-write-timeout": "10s" +} +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +--- + ### influxql-max-select-buckets Maximum number of group by time buckets a `SELECT` statement can create. `0` allows an unlimited number of buckets. @@ -582,6 +795,53 @@ log-level = "info" --- +### metrics-disabled +Disable the HTTP `/metrics` endpoint which exposes internal InfluxDB metrics. + +**Default:** `false` + +| influxd flag | Environment variable | Configuration key | +|:------------ |:-------------------- |:----------------- | +| `--metrics-disabled` | `INFLUXD_METRICS_DISABLED` | `metrics-disabled` | + +###### influxd flag +```sh +influxd --metrics-disabled +``` + +###### Environment variable +```sh +export INFLUXD_METRICS_DISABLED=true +``` + +###### Configuration file +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[YAML](#) +[TOML](#) +[JSON](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```yml +metrics-disabled: true +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```toml +metrics-disabled = true +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```json +{ + "metrics-disabled": true +} +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +--- + ### nats-max-payload-bytes Maximum number of bytes allowed in a NATS message payload. @@ -676,102 +936,6 @@ nats-port = -1 --- -### new-meta-store -Enable the new meta store. - -**Default:** `false` - -| influxd flag | Environment variable | Configuration key | -|:------------ |:-------------------- |:----------------- | -| `--new-meta-store` | `INFLUXD_NEW_META_STORE` | `new-meta-store` | - -###### influxd flag -```sh -influxd --new-meta-store -``` - -###### Environment variable -```sh -export INFLUXD_NEW_META_STORE=true -``` - -###### Configuration file -{{< code-tabs-wrapper >}} -{{% code-tabs %}} -[YAML](#) -[TOML](#) -[JSON](#) -{{% /code-tabs %}} -{{% code-tab-content %}} -```yml -new-meta-store: true -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} -```toml -new-meta-store = true -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} -```json -{ - "new-meta-store": true -} -``` -{{% /code-tab-content %}} -{{< /code-tabs-wrapper >}} - ---- - -### new-meta-store-read-only -Toggle read-only mode for the new meta store. -If `true`, reads are duplicated between old and new meta stores -(if [new meta store](#new-meta-store) is enabled). - -**Default:** `true` - -| influxd flag | Environment variable | Configuration key | -|:------------ |:-------------------- |:----------------- | -| `--new-meta-store-read-only` | `INFLUXD_NEW_META_STORE_READ_ONLY` | `new-meta-store-read-only` | - -###### influxd flag -```sh -influxd --new-meta-store-read-only -``` - -###### Environment variable -```sh -export INFLUXD_NEW_META_STORE_READ_ONLY=true -``` - -###### Configuration file -{{< code-tabs-wrapper >}} -{{% code-tabs %}} -[YAML](#) -[TOML](#) -[JSON](#) -{{% /code-tabs %}} -{{% code-tab-content %}} -```yml -new-meta-store-read-only: true -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} -```toml -new-meta-store-read-only = true -``` -{{% /code-tab-content %}} -{{% code-tab-content %}} -```json -{ - "new-meta-store-read-only": true -} -``` -{{% /code-tab-content %}} -{{< /code-tabs-wrapper >}} - ---- - ### no-tasks Disable the task scheduler. If problematic tasks prevent InfluxDB from starting, use this option to start @@ -821,6 +985,54 @@ no-tasks = true --- +### pprof-disabled +Disable the `/debug/pprof` HTTP endpoint. +This endpoint provides runtime profiling data and can be helpful when debugging. + +**Default:** `false` + +| influxd flag | Environment variable | Configuration key | +|:-------------------|:-------------------------|:------------------| +| `--pprof-disabled` | `INFLUXD_PPROF_DISABLED` | `pprof-disabled` | + +###### influxd flag +```sh +influxd --pprof-disabled +``` + +###### Environment variable +```sh +export INFLUXD_PPROF_DISABLED=true +``` + +###### Configuration file +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[YAML](#) +[TOML](#) +[JSON](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```yml +pprof-disabled: true +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```toml +pprof-disabled = true +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```json +{ + "pprof-disabled": true +} +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +--- + ### query-concurrency Number of queries allowed to execute concurrently. @@ -2037,6 +2249,54 @@ store = "bolt" --- +### testing-always-allow-setup +Ensures the `/api/v2/setup` endpoint always returns `true` to allow onboarding. +This configuration option is primary used in continuous integration tests. + +**Default:** `false` + +| influxd flag | Environment variable | Configuration key | +|:------------ |:-------------------- |:----------------- | +| `--testing-always-allow-setup` | `INFLUXD_TESTING_ALWAYS_ALLOW_SETUP` | `testing-always-allow-setup` | + +###### influxd flag +```sh +influxd --testing-always-allow-setup +``` + +###### Environment variable +```sh +export INFLUXD_TESTING_ALWAYS_ALLOW_SETUP=true +``` + +###### Configuration file +{{< code-tabs-wrapper >}} +{{% code-tabs %}} +[YAML](#) +[TOML](#) +[JSON](#) +{{% /code-tabs %}} +{{% code-tab-content %}} +```yml +testing-always-allow-setup: true +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```toml +testing-always-allow-setup = true +``` +{{% /code-tab-content %}} +{{% code-tab-content %}} +```json +{ + "testing-always-allow-setup": true +} +``` +{{% /code-tab-content %}} +{{< /code-tabs-wrapper >}} + +--- + ### tls-cert Path to TLS certificate file. Requires the [`tls-key`](#tls-key) to be set. diff --git a/content/influxdb/v2.0/reference/flux/stdlib/experimental/geo/_index.md b/content/influxdb/v2.0/reference/flux/stdlib/experimental/geo/_index.md index 82c7f181e..df6683e23 100644 --- a/content/influxdb/v2.0/reference/flux/stdlib/experimental/geo/_index.md +++ b/content/influxdb/v2.0/reference/flux/stdlib/experimental/geo/_index.md @@ -161,7 +161,7 @@ Define a custom polygon region using a record containing the following propertie ``` ## GIS geometry definitions -Many functions in the Geo package manipulate data based on geographic information system (GIS) data. +Many functions in the Geo package operate on data using geographic information system (GIS) data. Define GIS geometry using the following: - Any [region type](#region-definitions) _(typically [point](#point))_ diff --git a/content/influxdb/v2.0/reference/flux/stdlib/profiler/_index.md b/content/influxdb/v2.0/reference/flux/stdlib/profiler/_index.md index 1959b3d03..0d332aeb9 100644 --- a/content/influxdb/v2.0/reference/flux/stdlib/profiler/_index.md +++ b/content/influxdb/v2.0/reference/flux/stdlib/profiler/_index.md @@ -65,7 +65,7 @@ include a table with the following columns: ### operator The `operator` profiler output statistics about each operation in a query. -[Operations executed in the storage tier](/influxdb/v2.0/query-data/optimize-queries/#start-queries-with-pushdown-functions) +[Operations executed in the storage tier](/influxdb/v2.0/query-data/optimize-queries/#start-queries-with-pushdowns) return as a single operation. When the `operator` profile is enabled, results returned by [`yield()`](/influxdb/v2.0/reference/flux/stdlib/built-in/outputs/yield/) include a table with a row for each operation and the following columns: diff --git a/content/influxdb/v2.0/reference/glossary.md b/content/influxdb/v2.0/reference/glossary.md index 6b0737bb0..ca82b749d 100644 --- a/content/influxdb/v2.0/reference/glossary.md +++ b/content/influxdb/v2.0/reference/glossary.md @@ -96,7 +96,7 @@ boolean values are annotated with the `boolean` datatype. ### bucket A bucket is a named location where time series data is stored. -All buckets have a retention policy, a duration of time that each data point persists. +All buckets have a [retention period](#retention-period). A bucket belongs to an organization. ## C @@ -773,6 +773,12 @@ A tuple of named values represented using a record type. Regular expressions (regex or regexp) are patterns used to match character combinations in strings. +### retention period +The duration of time that a bucket retains data. +Points with timestamps older than their bucket's retention period are dropped. + +Related entries: [bucket](#bucket), [shard group duration](#shard-group-duration) + ### retention policy (RP) +Retention policy is an InfluxDB 1.x concept that represents the duration of time +that each data point in the retention policy persists. +The InfluxDB 2.x equivalent is [retention period](#retention-period). +For more information about retention policies, see the +[latest 1.x documentation](/{{< latest "influxdb" "v1" >}}/concepts/glossary/#retention-policy-rp). -Retention policy is a duration of time that each data point persists. Retention policies are specified in a bucket. - - +Related entries: [retention period](#retention-period), ### RFC3339 timestamp A timestamp that uses the human readable DateTime format proposed in @@ -903,36 +909,50 @@ Service input plugins listen on a socket for known protocol inputs, or apply the Related entries: [aggregator plugin](#aggregator-plugin), [input plugin](#input-plugin), [output plugin](#output-plugin), [processor plugin](#processor-plugin) - ### Single Stat @@ -1055,8 +1075,8 @@ Related entries: [point](#point), [unix timestamp](#unix-timestamp), [RFC3339 ti Tokens (or authentication tokens) verify user and organization permissions in InfluxDB. There are different types of athentication tokens: -- **Admin token:** grants full read and write access to all resources in **all organizations in InfluxDB OSS 2.x**. - _InfluxDB Cloud does not support Admin tokens._ +- **Operator token:** grants full read and write access to all resources in **all organizations in InfluxDB OSS 2.x**. + _InfluxDB Cloud does not support Operator tokens._ - **All-Access token:** grants full read and write access to all resources in an organization. - **Read/Write token:** grants read or write access to specific resources in an organization. diff --git a/content/influxdb/v2.0/reference/internals/file-system-layout.md b/content/influxdb/v2.0/reference/internals/file-system-layout.md new file mode 100644 index 000000000..db09d4490 --- /dev/null +++ b/content/influxdb/v2.0/reference/internals/file-system-layout.md @@ -0,0 +1,246 @@ +--- +title: InfluxDB file system layout +description: > + The InfluxDB file system layout depends on the operating system, package manager, + or containerization platform used to install InfluxDB. +weight: 102 +menu: + influxdb_2_0_ref: + name: File system layout + parent: InfluxDB internals +influxdb/v2.0/tags: [storage, internals] +--- + +The InfluxDB file system layout depends on the operating system, installation method, +or containerization platform used to install InfluxDB. + +- [InfluxDB file structure](#influxdb-file-structure) +- [File system layout](#file-system-layout) + +## InfluxDB file structure +The InfluxDB file structure includes of the following: + +#### Engine path +Directory path to the [storage engine](/{{< latest "influxdb" >}}/reference/internals/storage-engine/), +where InfluxDB stores time series data, includes the following directories: + +- **data**: stores Time-Structured Merge Tree (TSM) files +- **wal**: stores Write Ahead Log (WAL) files. + +To customize this path, use the [engine-path](/influxdb/v2.0/reference/config-options/#engine-path) +configuration option. + +#### Bolt path +File path to the [Boltdb](https://github.com/boltdb/bolt) database, a file-based +key-value store for non-time series data, such as InfluxDB users, dashboards, tasks, etc. +To customize this path, use the [bolt-path](/influxdb/v2.0/reference/config-options/#bolt-path) +configuration option. + +#### Configs path +File path to [`influx` CLI connection configurations](/influxdb/v2.0/reference/cli/influx/config/) (configs). +To customize this path, use the `--configs-path` flag with `influx` CLI commands. + +#### InfluxDB configuration files +Some operating systems and package managers store a default InfluxDB (`influxd`) configuration file on disk. +For more information about using InfluxDB configuration files, see +[Configuration options](/influxdb/v2.0/reference/config-options/). + +## File system layout +{{< tabs-wrapper >}} +{{% tabs %}} +[macOS](#) +[Linux](#) +[Windows](#) +[Docker](#) +[Kubernetes](#) +{{% /tabs %}} + +{{% tab-content %}} + +#### macOS default paths +| Path | Default | +|:---- |:------- | +| [Engine path](#engine-path) | `~/.influxdbv2/engine/` | +| [Bolt path](#bolt-path) | `~/.influxdbv2/influxd.bolt` | +| [Configs path](#configs-path) | `~/.influxdbv2/configs` | + +#### macOS file system overview +{{% filesystem-diagram %}} +- ~/.influxdbv2/ + - engine/ + - data/ + - _TSM directories and files_ + - wal/ + - _WAL directories and files_ + - configs + - influxd.bolt +{{% /filesystem-diagram %}} +{{% /tab-content %}} + + + +{{% tab-content %}} +When installing InfluxDB on Linux, you can download and install the `influxd` binary, +or you can use a package manager. +Which installation method you use determines the file system layout. + +- [Installed as a standalone binary](#installed-as-a-standalone-binary) +- [Installed as a package](#installed-as-a-package) + +### Installed as a standalone binary + +#### Linux default paths (standalone binary) +| Path | Default | +|:---- |:------- | +| [Engine path](#engine-path) | `~/.influxdbv2/engine/` | +| [Bolt path](#bolt-path) | `~/.influxdbv2/influxd.bolt` | +| [Configs path](#configs-path) | `~/.influxdbv2/configs` | + +#### Linux file system overview (standalone binary) +{{% filesystem-diagram %}} +- ~/.influxdbv2/ + - engine/ + - data/ + - _TSM directories and files_ + - wal/ + - _WAL directories and files_ + - configs + - influxd.bolt +{{% /filesystem-diagram %}} + +### Installed as a package +InfluxDB 2.0 supports **.deb-** and **.rpm-based** Linux package managers. +The file system layout is the same with each. + +#### Linux default paths (package) +| Path | Default | +|:---- |:------- | +| [Engine path](#engine-path) | `/var/lib/influxdb/engine/` | +| [Bolt path](#bolt-path) | `/var/lib/influxdb/influxd.bolt` | +| [Configs path](#configs-path) | `/var/lib/influxdb/configs` | +| [Default config file path](#influxdb-configuration-files) | `/etc/influxdb/config.toml` | + +#### Linux file system overview (package) +{{% filesystem-diagram %}} +- /var/lib/influxdb/ + - engine/ + - data/ + - _TSM directories and files_ + - wal/ + - _WAL directories and files_ + - configs + - influxd.bolt +- /etc/influxdb/ + - config.toml _(influxd configuration file)_ +{{% /filesystem-diagram %}} +{{% /tab-content %}} + + + +{{% tab-content %}} + +#### Windows default paths +| Path | Default | +|:---- |:------- | +| [Engine path](#engine-path) | `%USERPROFILE%\.influxdbv2\engine\` | +| [Bolt path](#bolt-path) | `%USERPROFILE%\.influxdbv2\influxd.bolt` | +| [Configs path](#configs-path) | `%USERPROFILE%\.influxdbv2\configs` | + +#### Windows file system overview +{{% filesystem-diagram %}} +- %USERPROFILE%\\.influxdbv2\ + - engine\ + - data\ + - _TSM directories and files_ + - wal\ + - _WAL directories and files_ + - configs + - influxd.bolt +{{% /filesystem-diagram %}} +{{% /tab-content %}} + + + +{{% tab-content %}} +InfluxDB Docker images are available from both [Dockerhub](https://hub.docker.com/_/influxdb) +and [Quay.io](https://quay.io/repository/influxdb/influxdb?tab=tags). +Each have a unique InfluxDB file system layout. + +- [Dockerhub](#dockerhub) +- [Quay.io](#quayio) + +### Dockerhub + +{{% note %}} +The InfluxDB Dockerhub image uses `/var/lib/influxdb2` instead of `/var/lib/influxdb` +so you can easily mount separate volumes for InfluxDB 1.x and 2.x data during the +[upgrade process](/influxdb/v2.0/upgrade/v1-to-v2/docker/). +{{% /note %}} + +#### Dockerhub default paths +| Path | Default | +|:---- |:------- | +| [Engine path](#engine-path) | `/var/lib/influxdb2/engine/` | +| [Bolt path](#bolt-path) | `/var/lib/influxdb2/influxd.bolt` | +| [Configs path](#configs-path) | `/etc/influxdb2/configs` | + +#### Dockerhub file system overview +{{% filesystem-diagram %}} +- /var/lib/influxdb2/ + - engine/ + - data/ + - _TSM directories and files_ + - wal/ + - _WAL directories and files_ + - influxd.bolt +- /etc/influxdb2/ + - configs +{{% /filesystem-diagram %}} + +### Quay.io + +#### Quay default paths +| Path | Default | +|:---- |:------- | +| [Engine path](#engine-path) | `/root/.influxdbv2/engine/` | +| [Bolt path](#bolt-path) | `/root/.influxdbv2/influxd.bolt` | +| [Configs path](#configs-path) | `/root/.influxdbv2/configs` | + +#### Quay file system overview +{{% filesystem-diagram %}} +- /root/.influxdbv2/ + - engine/ + - data/ + - _TSM directories and files_ + - wal/ + - _WAL directories and files_ + - configs + - influxd.bolt +{{% /filesystem-diagram %}} +{{% /tab-content %}} + + + +{{% tab-content %}} +#### Kubernetes default paths +| Path | Default | +|:---- |:------- | +| [Engine path](#engine-path) | `/var/lib/influxdb2/engine/` | +| [Bolt path](#bolt-path) | `/var/lib/influxdb2/influxd.bolt` | +| [Configs path](#configs-path) | `/etc/influxdb2/configs` | + +#### Kubernetes file system overview +{{% filesystem-diagram %}} +- /var/lib/influxdb2/ + - engine/ + - data/ + - _TSM directories and files_ + - wal/ + - _WAL directories and files_ + - influxd.bolt +- /etc/influxdb2/ + - configs +{{% /filesystem-diagram %}} +{{% /tab-content %}} + +{{< /tabs-wrapper >}} diff --git a/content/influxdb/v2.0/reference/internals/shards.md b/content/influxdb/v2.0/reference/internals/shards.md new file mode 100644 index 000000000..6ad73559b --- /dev/null +++ b/content/influxdb/v2.0/reference/internals/shards.md @@ -0,0 +1,145 @@ +--- +title: InfluxDB shards and shard groups +description: > + Learn the relationships between buckets, shards, and shard groups. + InfluxDB organizes time series data into **shards** when storing data to disk. + Shards are grouped into **shard groups**. +menu: + influxdb_2_0_ref: + name: Shards & shard groups + parent: InfluxDB internals +weight: 102 +influxdb/v2.0/tags: [storage, internals] +related: + - /influxdb/v2.0/reference/internals/storage-engine/ + - /influxdb/v2.0/organizations/buckets/ + - /influxdb/v2.0/reference/cli/influx/bucket/ +--- + +InfluxDB organizes time series data into **shards** when storing data to disk. +Shards are grouped into **shard groups**. +Learn the relationships between buckets, shards, and shard groups. + +- [Shards](#shards) +- [Shard groups](#shard-groups) + - [Shard group duration](#shard-group-duration) + - [Shard group diagram](#shard-group-diagram) +- [Shard life-cycle](#shard-life-cycle) + - [Shard precreation](#shard-precreation) + - [Shard writes](#shard-writes) + - [Shard compaction](#shard-compaction) +- [Shard deletion](#shard-deletion) + +## Shards +A shard contains encoded and compressed time series data for a given time range +defined by the [shard group duration](#shard-group-duration). +All points in a [series](#series) within the specified shard group duration are stored in the same shard. +A single shard contains multiple series, one or more [TSM files](#tsm-time-structured-merge-tree) on disk, +and belongs to a [shard group](#shard-groups). + +## Shard groups +A shard group belongs to an InfluxDB [bucket](/influxdb/v2.0/reference/glossary/#bucket) and contains time series data for a specific time range defined by +the [shard group duration](#shard-group-duration). + +{{% note %}} +In **InfluxDB OSS**, a shard group typically contains only a single shard. +In an **InfluxDB Enterprise 1.x cluster**, shard groups contain multiple shards +distributed across multiple data nodes. +{{% /note %}} + +### Shard group duration +The **shard group duration** specifies the time range for each shard group and determines how often to create a new shard group. +By default, InfluxDB sets the shard group duration according to +the [retention period](/influxdb/v2.0/reference/glossary/#retention-period) +of the bucket: + +| Bucket retention period | Default shard group duration | +|:----------------------- | ----------------------------:| +| less than 2 days | 1h | +| between 2 days and 6 months | 1d | +| greater than 6 months | 7d | + +##### Shard group duration configuration options +To configure a custom bucket shard group duration, use the `--shard-group-duration` +flag with the [`influx bucket create`](/influxdb/v2.0/reference/cli/influx/bucket/create/#create-a-custom-shard-group-duration) +and [`influx bucket update`](/influxdb/v2.0/reference/cli/influx/bucket/update//#update-the-shard-group-duration-of-a-bucket) commands. + +{{% note %}} +Shard group durations must be shorter than the bucket's retention period. +{{% /note %}} + +To view your bucket's shard group duration, use the +[`influx bucket list` command](/influxdb/v2.0/reference/cli/influx/bucket/list/). + +### Shard group diagram +The following diagram represents a **bucket** with a **4d retention period** +and a **1d shard group duration**: + +--- + +{{< html-diagram/shards >}} + +--- + +## Shard life-cycle + +### Shard precreation +The InfluxDB **shard precreation service** pre-creates shards with future start +and end times for each shard group based on the shard group duration. + +The precreator service does not pre-create shards for past time ranges. +When backfilling historical data, InfluxDB creates shards for past time ranges as needed, +resulting in temporarily lower write throughput. + +##### Shard precreation-related configuration settings +- [`storage-shard-precreator-advance-period`](/influxdb/v2.0/reference/config-options/#storage-shard-precreator-advance-period) +- [`storage-shard-precreator-check-interval`](/influxdb/v2.0/reference/config-options/#storage-shard-precreator-check-interval) + +### Shard writes +InfluxDB writes time series data to un-compacted or "hot" shards. +When a shard is no longer actively written to, InfluxDB [compacts](#shard-compaction) shard data, resulting in a "cold" shard. + +Typically, InfluxDB writes data to the most recent shard group, but when backfilling +historical data, InfluxDB writes to older shards that must first be un-compacted. +When the backfill is complete, InfluxDB re-compacts the older shards. + +### Shard compaction +InfluxDB compacts shards at regular intervals to compress time series data and optimize disk usage. +InfluxDB uses the following four compaction levels: + +- **Level 1 (L1):** InfluxDB flushes all newly written data held in an in-memory cache to disk. +- **Level 2 (L2):** InfluxDB compacts up to eight L1-compacted files into one or more L2 files by + combining multiple blocks containing the same series into fewer blocks in one or more new files. +- **Level 3 (L3):** InfluxDB iterates over L2-compacted file blocks (over a certain size) + and combines multiple blocks containing the same series into one block in a new file. +- **Level 4 (L4):** **Full compaction**—InfluxDB iterates over L3-compacted file blocks + and combines multiple blocks containing the same series into one block in a new file. + +##### Shard compaction-related configuration settings +- [`storage-compact-full-write-cold-duration`](/influxdb/v2.0/reference/config-options/#storage-compact-full-write-cold-duration) +- [`storage-compact-throughput-burst`](/influxdb/v2.0/reference/config-options/#storage-compact-throughput-burst) +- [`storage-max-concurrent-compactions`](/influxdb/v2.0/reference/config-options/#storage-max-concurrent-compactions) +- [`storage-max-index-log-file-size`](/influxdb/v2.0/reference/config-options/#storage-max-index-log-file-size) +- [`storage-series-file-max-concurrent-snapshot-compactions`](/influxdb/v2.0/reference/config-options/#storage-series-file-max-concurrent-snapshot-compactions) +- [`storage-series-file-max-concurrent-snapshot-compactions`](/influxdb/v2.0/reference/config-options/#storage-series-file-max-concurrent-snapshot-compactions) + +## Shard deletion +The InfluxDB **retention enforcement service** routinely checks for shard groups +older than their bucket's retention period. +Once the start time of a shard group is beyond the bucket's retention period, +InfluxDB deletes the shard group and associated shards and TSM files. + +In buckets with an infinite retention period, shards remain on disk indefinitely. + +{{% note %}} +#### InfluxDB only deletes cold shards +InfluxDB only deletes **cold** shards. +If backfilling data beyond a bucket's retention period, the backfilled data will +remain on disk until one of the following occurs: + +1. The shard returns to a cold state. +2. The retention enforcement service deletes the shard group. +{{% /note %}} + +##### Retention enforcement-related configuration settings +- [`storage-retention-check-interval`](/influxdb/v2.0/reference/config-options/#storage-retention-check-interval) diff --git a/content/influxdb/v2.0/reference/internals/storage-engine.md b/content/influxdb/v2.0/reference/internals/storage-engine.md index 034445ec7..27c9b20c3 100644 --- a/content/influxdb/v2.0/reference/internals/storage-engine.md +++ b/content/influxdb/v2.0/reference/internals/storage-engine.md @@ -2,7 +2,7 @@ title: InfluxDB storage engine description: > An overview of the InfluxDB storage engine architecture. -weight: 7 +weight: 101 menu: influxdb_2_0_ref: name: Storage engine diff --git a/content/influxdb/v2.0/reference/internals/system-buckets.md b/content/influxdb/v2.0/reference/internals/system-buckets.md index 707b5fab2..bbc19a7ab 100644 --- a/content/influxdb/v2.0/reference/internals/system-buckets.md +++ b/content/influxdb/v2.0/reference/internals/system-buckets.md @@ -7,7 +7,7 @@ menu: influxdb_2_0_ref: name: System buckets parent: InfluxDB internals -weight: 101 +weight: 103 influxdb/v2.0/tags: [buckets] related: - /influxdb/v2.0/monitor-alert/ diff --git a/content/influxdb/v2.0/reference/release-notes/influxdb.md b/content/influxdb/v2.0/reference/release-notes/influxdb.md index 9b02605d2..c4c2c178a 100644 --- a/content/influxdb/v2.0/reference/release-notes/influxdb.md +++ b/content/influxdb/v2.0/reference/release-notes/influxdb.md @@ -8,6 +8,98 @@ menu: weight: 101 --- +## v2.0.5 General Availability [2021-04-27] + +### Windows Support +This release includes our initial Windows preview build. + +### Breaking Changes + +#### /debug/vars removed +Prior to this release, the `influxd` server would expose profiling information over the `/debug/vars` endpoint. +This endpoint was unauthenticated and not used by InfluxDB systems to report diagnostics. +For security and clarity, the endpoint has been removed. +Use the `/metrics` endpoint to collect system statistics. + +#### `influx transpile` removed +The `transpile` command has been removed. Send InfluxQL requests directly to the server via the `/api/v2/query` +or `/query` HTTP endpoints. + +#### Default query concurrency changed +The default setting for the max number of concurrent Flux queries has been changed from 10 to unlimited (`0`). +To limit query concurrency and queue size: + +1. Set the `query-concurrency` config parameter to > 0 when running `influxd` to re-limit the maximum running query count, +2. Set the `query-queue-size` config parameter to > 0 to set the max number of queries that can be queued before the + server starts rejecting requests. + +#### Prefix for query-controller metrics changed +The prefix used for Prometheus metrics from the query controller has changed from `query_control_` to `qc_`. + +### Features +- Add [Swift client library](https://github.com/influxdata/influxdb-client-swift) + to the **Load Data** section of the InfluxDB UI. +- Add [`influx task retry-failed` command](/influxdb/v2.0/reference/cli/influx/task/retry-failed/) to rerun failed runs. +- Add [`--compression` option](/influxdb/v2.0/reference/cli/influx/write/#flags) + to the `influx write` command to support Gzip inputs. +- Add new `influxd` configuration options: + - [pprof-disabled](/influxdb/v2.0/reference/config-options/#pprof-disabled) + - [metrics-disabled](/influxdb/v2.0/reference/config-options/#metrics-disabled) + - [http-read-header-timeout](/influxdb/v2.0/reference/config-options/#http-read-header-timeout) + - [http-read-timeout](/influxdb/v2.0/reference/config-options/#http-read-timeout) + - [http-write-timeout](/influxdb/v2.0/reference/config-options/#http-write-timeout) + - [http-idle-timeout](/influxdb/v2.0/reference/config-options/#http-idle-timeout) +- Add `/debug/pprof/all` HTTP endpoint to gather all profiles at once. +- Include the InfluxDB 1.x `http.pprof-enabled` configuration option in the 2.0 + configuration file generated by the [InfluxDB upgrade process](/influxdb/v2.0/upgrade/v1-to-v2/automatic-upgrade/). +- Add support for [custom shard group durations](/influxdb/v2.0/reference/cli/influx/bucket/create/#create-a-bucket-with-a-custom-shard-group-duration) on buckets. +- Optimize regular expression conditions in InfluxQL subqueries. +- Update Telegraf plugins in the InfluxDB UI to include additions and changes from + [Telegraf 1.18](/telegraf/v1.18/about_the_project/release-notes-changelog/#v118-2021-3-17). +- Display task IDs in the tasks list in the InfluxDB UI. +- Write to standard output (`stdout`) when `--output-path -` is passed to [`influxd inspect export-lp`](/influxdb/v2.0/reference/cli/influxd/inspect/export-lp/). +- Add `-p, --profilers` flag to [`influx query` command](/influxdb/v2.0/reference/cli/influx/query/) + to enable [Flux profilers](/influxdb/v2.0/reference/flux/stdlib/profiler/) on + a query executed from the `influx` CLI. +- Update InfluxDB OSS UI to match InfluxDB Cloud. +- Support disabling concurrency limits in the Flux controller. +- Replace unique resource IDs (UI assets, backup shards) with slugs to reduce + cardinality of telemetry data. +- Standardize HTTP server error log output. +- Enable InfluxDB user interface features: + - [Band visualization type](/influxdb/v2.0/visualize-data/visualization-types/band/) + - [Mosiac visualization type](/influxdb/v2.0/visualize-data/visualization-types/mosaic/) + - [Configure axis tick marks](/influxdb/v2.0/visualize-data/visualization-types/graph/#x-axis) + - Upload CSV files through the InfluxDB UI + - [Edit Telegraf configurations](/influxdb/v2.0/telegraf-configs/update/#edit-the-configuration-file-directly-in-the-ui) in the InfluxDB UI + - [Legend orientation options](/influxdb/v2.0/visualize-data/visualization-types/graph/#legend) + - [Refresh a single dashboard cell](/influxdb/v2.0/visualize-data/dashboards/control-dashboard/#refresh-a-single-dashboard-cell) +- Upgrade to **Flux v0.113.0**. + +### Bug Fixes +- Prevent "do not have an execution context" error when parsing Flux options in tasks. +- Fix swagger to match implementation of DBRPs type. +- Fix use-after-free bug in series ID iterator. +- Fix TSM and WAL segment size check to check against the local `SegmentSize`. +- Fix TSM and WAL segment size computing to correctly calculate `totalOldDiskSize`. +- Update references to the documentation site site to use current URLs. +- Fix data race in then TSM engine when inspecting tombstone statistics. +- Fix data race in then TSM cache. +- Deprecate misleading `retentionPeriodHrs` key in the onboarding API. +- Fix Single Stat graphs with thresholds crashing on negative values. +- Fix InfluxDB port in Flux function UI examples. +- Remove unauthenticated, unsupported `/debug/vars` HTTP endpoint. +- Respect 24 hour clock formats in the InfluxDB UI and add more format choices. +- Prevent "do not have an execution context" error when parsing Flux options in tasks. +- Prevent time field names from being formatted in the Table visualization. +- Log error details when `influxd upgrade` fails to migrate databases. +- Fix the cipher suite used when TLS strict ciphers are enabled in `influxd`. +- Fix parse error in UI for tag filters containing regular expression meta characters. +- Prevent concurrent access panic when gathering bolt metrics. +- Fix race condition in Flux controller shutdown. +- Reduce lock contention when adding new fields and measurements. +- Escape dots in community templates hostname regular expression. + ## v2.0.4 General Availability [2021-02-04] ### Docker @@ -34,7 +126,7 @@ The startup process automatically generates replacement `tsi1` indexes for shard - Add new [`influxd upgrade`](/influxdb/v2.0/reference/cli/influxd/upgrade/) flag `—overwrite-existing-v2` to overwrite existing files at output paths (instead of aborting). - Add new configuration options: - [`nats-port`](/influxdb/v2.0/reference/config-options/#nats-port) - - [`nats-max-payload-bytes`](/influxdb/v2.0/reference/config-options/#nats-max-payload-bytes) + - [`nats-max-payload-bytes`](/influxdb/v2.0/reference/config-options/#nats-max-payload-bytes) - Add new commands: - Add [`influxd print-config`](/influxdb/v2.0/reference/cli/influxd/print-config/) to support automated configuration inspection. - Add [`influxd inspect export-lp`](/influxdb/v2.0/reference/cli/influxd/inspect/export-lp/) to extract data in line-protocol format. diff --git a/content/influxdb/v2.0/security/tokens/_index.md b/content/influxdb/v2.0/security/tokens/_index.md index 5e8fc3988..0ffbadee0 100644 --- a/content/influxdb/v2.0/security/tokens/_index.md +++ b/content/influxdb/v2.0/security/tokens/_index.md @@ -12,23 +12,23 @@ menu: weight: 103 --- -InfluxDB ensures secure interaction between users and data through the use of **authentication tokens**. +InfluxDB **authentication tokens** ensure secure interaction between users and data. A token belongs to an organization and identifies InfluxDB permissions within the organization. Learn how to create, view, update, or delete an authentication token. ## Authentication token types -- [Admin token](#admin-token) +- [Operator token](#operator-token) - [All-Access token](#all-access-token) - [Read/Write token](#readwrite-token) -#### Admin token +#### Operator token Grants full read and write access to all resources in **all organizations in InfluxDB OSS 2.x**. {{% note %}} -Admin tokens are created in the InfluxDB setup process and cannot be created manually. -Because Admin tokens have full read and write access to all organizations in the database, +Operator tokens are created in the InfluxDB setup process and cannot be created manually. +Because Operator tokens have full read and write access to all organizations in the database, we recommend [creating an All-Access token](/influxdb/v2.0/security/tokens/create-token/) for each organization and using those to manage InfluxDB. This helps to prevent accidental interactions across organizations. @@ -38,6 +38,6 @@ This helps to prevent accidental interactions across organizations. Grants full read and write access to all resources in an organization. #### Read/Write token -Grants read or write access to specific resources in an organization. +Grants read access, write access, or both to specific buckets in an organization. {{< children hlevel="h2" >}} diff --git a/content/influxdb/v2.0/security/tokens/create-token.md b/content/influxdb/v2.0/security/tokens/create-token.md index b29115db3..917784f8b 100644 --- a/content/influxdb/v2.0/security/tokens/create-token.md +++ b/content/influxdb/v2.0/security/tokens/create-token.md @@ -23,7 +23,7 @@ Tokens are visible only to the user who created them and stop working when the u {{< nav-icon "disks" >}} 2. Click **{{< icon "plus" >}} Generate** and select a token type - (**Read/Write Token** or **All Access Token**). + (**Read/Write Token** or **All-Access Token**). 3. In the window that appears, enter a description for your token in the **Description** field. 4. If generating a **read/write token**: - Search for and select buckets to read from in the **Read** pane. diff --git a/content/influxdb/v2.0/upgrade/v1-to-v2/automatic-upgrade.md b/content/influxdb/v2.0/upgrade/v1-to-v2/automatic-upgrade.md index 69cc9aa16..6f257747d 100644 --- a/content/influxdb/v2.0/upgrade/v1-to-v2/automatic-upgrade.md +++ b/content/influxdb/v2.0/upgrade/v1-to-v2/automatic-upgrade.md @@ -100,18 +100,43 @@ You can continue to use Kapacitor with InfluxDB OSS 2.0 under the following scen ### User migration -`influxd upgrade` migrates existing 1.x users and their permissions. -However, it *does not migrate administrative users*. +`influxd upgrade` migrates existing 1.x users and their permissions **except** the following users: -To review users with admin permissions, in the InfluxDB 1.x CLI, run `show users`. -Any users labeled "admin" *will not* be migrated. +- [1.x admin users](/{{< latest "influxdb" "v1" >}}/administration/authentication_and_authorization/#admin-users) +- [1.x non-admin users](/{{< latest "influxdb" "v1" >}}/administration/authentication_and_authorization/#non-admin-users) + that have not been granted any privileges + +{{< expand-wrapper >}} +{{% expand "Review 1.x user privileges" %}} +**To review 1.x users with admin privileges**, run the following against your InfluxDB 1.x instance: + +```sql +SHOW USERS +``` + +Users with `admin` set to `true` will **not** be migrated. + +**To review the specific privileges granted to each 1.x user**, run the following for each user in your InfluxDB 1.x instance: + +```sql +SHOW GRANTS FOR "" +``` + +If no grants appear, the user will **not** be migrated. +{{% /expand %}} +{{< /expand-wrapper >}} If using an admin user for visualization or Chronograf administrative functions, -create a new read-only user before upgrading. -Admin rights are granted to the primary user created in the InfluxDB 2.0 setup -process which runs at the end of the upgrade process. -This provides you with the opportunity to re-assess who should be granted -admin-level access in your InfluxDB 2.0 setup. +**create a new read-only user before upgrading**: + +##### Create a read-only 1.x user +```sh +> CREATE USER WITH PASSWORD '' +> GRANT READ ON TO "" +``` + +InfluxDB 2.0 only grants admin privileges to the primary user set up during the InfluxDB 2.0 upgrade. +This provides you with the opportunity to reassess who to grant admin permissions when setting up InfluxDB 2.0. ### Dashboards diff --git a/content/influxdb/v2.0/upgrade/v1-to-v2/manual-upgrade.md b/content/influxdb/v2.0/upgrade/v1-to-v2/manual-upgrade.md index 048fb8521..81636490a 100644 --- a/content/influxdb/v2.0/upgrade/v1-to-v2/manual-upgrade.md +++ b/content/influxdb/v2.0/upgrade/v1-to-v2/manual-upgrade.md @@ -84,7 +84,7 @@ If you're using custom configuration settings in your InfluxDB 1.x instance, do | access-log-path | | | access-log-status-filters | | | write-tracing | | -| pprof-enabled | | +| pprof-enabled | [pprof-disabled](/influxdb/v2.0/reference/config-options/#pprof-disabled) | | pprof-auth-enabled | | | debug-pprof-enabled | | | ping-auth-enabled | | @@ -99,7 +99,7 @@ If you're using custom configuration settings in your InfluxDB 1.x instance, do | max-body-size | | | max-concurrent-write-limit | | | max-enqueued-write-limit | | -| enqueued-write-timeout | | +| enqueued-write-timeout | [http-write-timeout](/influxdb/v2.0/reference/config-options/#http-write-timeout) | | | | | **[logging]** | | | format | | @@ -160,7 +160,7 @@ _For more information about DBRP mapping, see 2. **Create a DBRP mapping** Use the [`influx v1 dbrp create` command](/influxdb/v2.0/reference/cli/influx/v1/dbrp/create/) - command to create a DBRP mapping. + to create a DBRP mapping. Provide the following: - database name @@ -332,7 +332,7 @@ To migrate time series data from your InfluxDB 1.x instance to InfluxDB 2.0: --file /path/to/example-db_example-rp.lp ``` -Repeat this process for each bucket. +3. Repeat steps 1-2 for each bucket. ## Migrate continuous queries For information about migrating InfluxDB 1.x continuous queries to InfluxDB 2.0 tasks, diff --git a/content/influxdb/v2.0/upgrade/v1-to-v2/migrate-cqs.md b/content/influxdb/v2.0/upgrade/v1-to-v2/migrate-cqs.md index f6032da35..1bb32cd77 100644 --- a/content/influxdb/v2.0/upgrade/v1-to-v2/migrate-cqs.md +++ b/content/influxdb/v2.0/upgrade/v1-to-v2/migrate-cqs.md @@ -37,14 +37,14 @@ influxd upgrade --continuous-query-export-path /path/to/continuous_queries.txt **To manually output continuous queries:** -1. Use the InfluxDB 1.x `influx` interactive shell to run `show continuous queries`: +1. Use the **InfluxDB 1.x `influx` interactive shell** to run `SHOW CONTINUOUS QUERIES`: {{< keep-url >}} ```sh $ influx Connected to http://localhost:8086 version 1.8.5 InfluxDB shell version: 1.8.5 - > show continuous queries + > SHOW CONTINUOUS QUERIES ``` 2. Copy and save the displayed continuous queries. diff --git a/content/influxdb/v2.0/visualize-data/dashboards/control-dashboard.md b/content/influxdb/v2.0/visualize-data/dashboards/control-dashboard.md index dee53a668..52b0c3e27 100644 --- a/content/influxdb/v2.0/visualize-data/dashboards/control-dashboard.md +++ b/content/influxdb/v2.0/visualize-data/dashboards/control-dashboard.md @@ -37,6 +37,11 @@ Click the timezone dropdown to select a timezone to use for the dashboard. Selec Click the refresh button (**{{< icon "refresh" >}}**) to manually refresh the dashboard's data. +#### Refresh a single dashboard cell + +1. Click the **{{< icon "gear" >}}** on the dashboard cell you want to refresh. +2. Click **{{< icon "refresh" >}} Refresh**. + ### Select time range 1. Select from the time range options in the dropdown menu. diff --git a/content/influxdb/v2.0/visualize-data/visualization-types/band.md b/content/influxdb/v2.0/visualize-data/visualization-types/band.md index a73179d0a..5430615fc 100644 --- a/content/influxdb/v2.0/visualize-data/visualization-types/band.md +++ b/content/influxdb/v2.0/visualize-data/visualization-types/band.md @@ -1,22 +1,22 @@ --- -title: Band Plot visualization +title: Band visualization list_title: Band list_image: /img/influxdb/2-0-visualizations-Band-example.png description: -weight: 206 +weight: 201 menu: influxdb_2_0: - name: Band Plot + name: Band parent: Visualization types --- -The **Band Plot** visualization displays the upper and lower boundaries for groups of data over time. Boundaries are determined by applying aggregate functions to your data for a specified window period, and then setting the aggregate functions for a specified upper, main, or lower boundary. +The **Band** visualization displays the upper and lower boundaries for groups of data over time. Boundaries are determined by applying aggregate functions to your data for a specified window period, and then setting the aggregate functions for a specified upper, main, or lower boundary. -## Set up the Band Plot visualization +## Set up the Band visualization To see bands (boundaries) in the **Band Plot** visualization, you must set up two or three boundaries for comparison. -### Set up the band plot visualization in the Data Explorer +### Set up the band visualization in the Data Explorer 1. Click the **Data Explorer** icon in the navigation bar. diff --git a/content/influxdb/v2.0/visualize-data/visualization-types/gauge.md b/content/influxdb/v2.0/visualize-data/visualization-types/gauge.md index 6f1586e20..2322e4349 100644 --- a/content/influxdb/v2.0/visualize-data/visualization-types/gauge.md +++ b/content/influxdb/v2.0/visualize-data/visualization-types/gauge.md @@ -4,7 +4,7 @@ list_title: Gauge list_image: /img/influxdb/2-0-visualizations-gauge-example.png description: > The Gauge view displays the single value most recent value for a time series in a gauge view. -weight: 206 +weight: 201 menu: influxdb_2_0: name: Gauge diff --git a/content/influxdb/v2.0/visualize-data/visualization-types/graph-single-stat.md b/content/influxdb/v2.0/visualize-data/visualization-types/graph-single-stat.md index 53347ceb7..babacc0bc 100644 --- a/content/influxdb/v2.0/visualize-data/visualization-types/graph-single-stat.md +++ b/content/influxdb/v2.0/visualize-data/visualization-types/graph-single-stat.md @@ -55,6 +55,14 @@ the visualization dropdown. - **Y Axis**: Show all points with the same y value along the x-axis. - **X & Y Axis**: Show only the point currently being hovered over. +###### X Axis +- **Generate X-Axis Tick Marks**: Select the method to generate x-axis tick marks: + - **Auto**: Select to automatically generate tick marks. + - **Custom**: To customize the number of x-axis tick marks, select this option, and then enter the following: + - **Total Tick Marks**: Enter the total number of ticks to display. + - **Start Tick Marks At**: Enter the value to start ticks at. + - **Tick Mark Interval**: Enter the interval in between each tick. + ###### Y Axis - **Y Axis Label**: Label for the y-axis. - **Y Value Unit Prefix**: @@ -63,6 +71,12 @@ the visualization dropdown. - **Binary**: Binary multiple prefix. - **Y Axis Prefix**: Prefix to be added to y-value. - **Y Axis Suffix**: Suffix to be added to y-value. +- **Generate Y-Axis Tick Marks**: Select the method to generate y-axis tick marks: + - **Auto**: Select to automatically generate tick marks. + - **Custom**: To customize the number of y-axis tick marks, select this option, and then enter the following: + - **Total Tick Marks**: Enter the total number of ticks to display. + - **Start Tick Marks At**: Enter the value to start ticks at. + - **Tick Mark Interval**: Enter the interval in between each tick. - **Y Axis Domain**: The y-axis value range. - **Auto**: Automatically determine the value range based on values in the data set. - **Custom**: Manually specify the minimum y-axis value, maximum y-axis value, or range by including both. @@ -86,6 +100,13 @@ the visualization dropdown. - **Colorization**: Choose **Text** for the single stat to change color based on the configured thresholds. Choose **Background** for the background of the graph to change color based on the configured thresholds. +###### Legend +- **Legend Orientation**: Select the orientation of the legend that appears upon hover: + - **Horizontal**: Select to display the legend horizontally. + - **Vertical**: Select to display the legend vertically. +- **Opacity**: Adjust the legend opacity using the slider. +- **Colorize Rows**: Select to display legend rows in colors. + ## Graph + Single Stat examples The primary use case for the Graph + Single Stat visualization is to show the current or latest value as well as historical values. diff --git a/content/influxdb/v2.0/visualize-data/visualization-types/graph.md b/content/influxdb/v2.0/visualize-data/visualization-types/graph.md index 1ddfb2df1..3af8f5f2f 100644 --- a/content/influxdb/v2.0/visualize-data/visualization-types/graph.md +++ b/content/influxdb/v2.0/visualize-data/visualization-types/graph.md @@ -48,10 +48,24 @@ the visualization dropdown. - **Y Axis**: Show all points with the same y value along the x-axis. - **X & Y Axis**: Show only the point currently being hovered over. +###### X Axis +- **Generate X-Axis Tick Marks**: Select the method to generate x-axis tick marks: + - **Auto**: Select to automatically generate tick marks. + - **Custom**: To customize the number of x-axis tick marks, select this option, and then enter the following: + - **Total Tick Marks**: Enter the total number of ticks to display. + - **Start Tick Marks At**: Enter the value to start ticks at. + - **Tick Mark Interval**: Enter the interval in between each tick. + ###### Y Axis - **Y Axis Label**: Label for the y-axis. - **Y Axis Prefix**: Prefix to be added to y-value. - **Y Axis Suffix**: Suffix to be added to y-value. +- **Generate Y-Axis Tick Marks**: Select the method to generate y-axis tick marks: + - **Auto**: Select to automatically generate tick marks. + - **Custom**: To customize the number of y-axis tick marks, select this option, and then enter the following: + - **Total Tick Marks**: Enter the total number of ticks to display. + - **Start Tick Marks At**: Enter the value to start ticks at. + - **Tick Mark Interval**: Enter the interval in between each tick. - **Y Axis Domain**: The y-axis value range. - **Auto**: Automatically determine the value range based on values in the data set. - **Custom**: Manually specify the minimum y-axis value, maximum y-axis value, or range by including both. @@ -61,6 +75,12 @@ the visualization dropdown. - **Overlaid**: Display graph lines overlaid on each other. - **Stacked**: Display graph lines stacked on top of each other. +###### Legend +- **Legend Orientation**: Select the orientation of the legend that appears upon hover: + - **Horizontal**: Select to display the legend horizontally. + - **Vertical**: Select to display the legend vertically. +- **Opacity**: Adjust the legend opacity using the slider. +- **Colorize Rows**: Select to display legend rows in colors. ## Graph Examples diff --git a/content/influxdb/v2.0/visualize-data/visualization-types/heatmap.md b/content/influxdb/v2.0/visualize-data/visualization-types/heatmap.md index 132951155..44f07c0d2 100644 --- a/content/influxdb/v2.0/visualize-data/visualization-types/heatmap.md +++ b/content/influxdb/v2.0/visualize-data/visualization-types/heatmap.md @@ -5,7 +5,7 @@ list_image: /img/influxdb/2-0-visualizations-heatmap-example.png description: > A Heatmap displays the distribution of data on an x and y axes where color represents different concentrations of data points. -weight: 203 +weight: 202 menu: influxdb_2_0: name: Heatmap @@ -44,8 +44,12 @@ the visualization dropdown. ###### X Axis - **X Axis Label**: Label for the x-axis. -- **X Tick Prefix**: Prefix to be added to x-value. -- **X Tick Suffix**: Suffix to be added to x-value. +- **Generate X-Axis Tick Marks**: Select the method to generate x-axis tick marks: + - **Auto**: Select to automatically generate tick marks. + - **Custom**: To customize the number of x-axis tick marks, select this option, and then enter the following: + - **Total Tick Marks**: Enter the total number of ticks to display. + - **Start Tick Marks At**: Enter the value to start ticks at. + - **Tick Mark Interval**: Enter the interval in between each tick. - **X Axis Domain**: The x-axis value range. - **Auto**: Automatically determine the value range based on values in the data set. - **Custom**: Manually specify the minimum y-axis value, maximum y-axis value, or range by including both. @@ -56,12 +60,25 @@ the visualization dropdown. - **Y Axis Label**: Label for the y-axis. - **Y Tick Prefix**: Prefix to be added to y-value. - **Y Tick Suffix**: Suffix to be added to y-value. +- **Generate Y-Axis Tick Marks**: Select the method to generate y-axis tick marks: + - **Auto**: Select to automatically generate tick marks. + - **Custom**: To customize the number of y-axis tick marks, select this option, and then enter the following: + - **Total Tick Marks**: Enter the total number of ticks to display. + - **Start Tick Marks At**: Enter the value to start ticks at. + - **Tick Mark Interval**: Enter the interval in between each tick. - **Y Axis Domain**: The y-axis value range. - **Auto**: Automatically determine the value range based on values in the data set. - **Custom**: Manually specify the minimum y-axis value, maximum y-axis value, or range by including both. - **Min**: Minimum y-axis value. - **Max**: Maximum y-axis value. +###### Legend +- **Legend Orientation**: Select the orientation of the legend that appears upon hover: + - **Horizontal**: Select to display the legend horizontally. + - **Vertical**: Select to display the legend vertically. +- **Opacity**: Adjust the legend opacity using the slider. +- **Colorize Rows**: Select to display legend rows in colors. + ## Heatmap examples ### Cross-measurement correlation diff --git a/content/influxdb/v2.0/visualize-data/visualization-types/histogram.md b/content/influxdb/v2.0/visualize-data/visualization-types/histogram.md index 7bb08f693..49b0919f6 100644 --- a/content/influxdb/v2.0/visualize-data/visualization-types/histogram.md +++ b/content/influxdb/v2.0/visualize-data/visualization-types/histogram.md @@ -5,7 +5,7 @@ list_image: /img/influxdb/2-0-visualizations-histogram-example.png description: > A histogram is a way to view the distribution of data. The y-axis is dedicated to count, and the x-axis is divided into bins. -weight: 204 +weight: 202 menu: influxdb_2_0: name: Histogram @@ -56,6 +56,13 @@ the visualization dropdown. - **Min**: Minimum x-axis value. - **Max**: Maximum x-axis value. +###### Legend +- **Legend Orientation**: Select the orientation of the legend that appears upon hover: + - **Horizontal**: Select to display the legend horizontally. + - **Vertical**: Select to display the legend vertically. +- **Opacity**: Adjust the legend opacity using the slider. +- **Colorize Rows**: Select to display legend rows in colors. + ## Histogram examples ### View error counts by severity over time diff --git a/content/influxdb/v2.0/visualize-data/visualization-types/mosaic.md b/content/influxdb/v2.0/visualize-data/visualization-types/mosaic.md index bc45bdd5f..463afc27c 100644 --- a/content/influxdb/v2.0/visualize-data/visualization-types/mosaic.md +++ b/content/influxdb/v2.0/visualize-data/visualization-types/mosaic.md @@ -5,12 +5,11 @@ list_image: /img/influxdb/2-0-visualizations-mosaic-example.png description: > The Mosaic visualization displays state changes in your time series data. This visualization type is useful when you want to show changes in string-based states over time. -weight: 206 +weight: 202 menu: influxdb_2_0: name: Mosaic parent: Visualization types -draft: true --- The **Mosaic** visualization displays state changes in your time series data. diff --git a/content/influxdb/v2.0/visualize-data/visualization-types/scatter.md b/content/influxdb/v2.0/visualize-data/visualization-types/scatter.md index d9fc6a99a..cb742e2db 100644 --- a/content/influxdb/v2.0/visualize-data/visualization-types/scatter.md +++ b/content/influxdb/v2.0/visualize-data/visualization-types/scatter.md @@ -4,7 +4,7 @@ list_title: Scatter list_image: /img/influxdb/2-0-visualizations-scatter-example.png description: > The Scatter view uses a scatter plot to display time series data. -weight: 208 +weight: 202 menu: influxdb_2_0: name: Scatter @@ -43,17 +43,41 @@ the visualization dropdown. ###### X Axis - **X Axis Label**: Label for the x-axis. +- **Generate X-Axis Tick Marks**: Select the method to generate x-axis tick marks: + - **Auto**: Select to automatically generate tick marks. + - **Custom**: To customize the number of x-axis tick marks, select this option, and then enter the following: + - **Total Tick Marks**: Enter the total number of ticks to display. + - **Start Tick Marks At**: Enter the value to start ticks at. + - **Tick Mark Interval**: Enter the interval in between each tick. +- **X Axis Domain**: The x-axis value range. + - **Auto**: Automatically determine the value range based on values in the data set. + - **Custom**: Manually specify the minimum x-axis value, maximum x-axis value, or range by including both. + - **Min**: Minimum x-axis value. + - **Max**: Maximum x-axis value. ###### Y Axis - **Y Axis Label**: Label for the y-axis. - **Y Tick Prefix**: Prefix to be added to y-value. - **Y Tick Suffix**: Suffix to be added to y-value. +- **Generate Y-Axis Tick Marks**: Select the method to generate y-axis tick marks: + - **Auto**: Select to automatically generate tick marks. + - **Custom**: To customize the number of y-axis tick marks, select this option, and then enter the following: + - **Total Tick Marks**: Enter the total number of ticks to display. + - **Start Tick Marks At**: Enter the value to start ticks at. + - **Tick Mark Interval**: Enter the interval in between each tick. - **Y Axis Domain**: The y-axis value range. - **Auto**: Automatically determine the value range based on values in the data set. - **Custom**: Manually specify the minimum y-axis value, maximum y-axis value, or range by including both. - **Min**: Minimum y-axis value. - **Max**: Maximum y-axis value. +###### Legend +- **Legend Orientation**: Select the orientation of the legend that appears upon hover: + - **Horizontal**: Select to display the legend horizontally. + - **Vertical**: Select to display the legend vertically. +- **Opacity**: Adjust the legend opacity using the slider. +- **Colorize Rows**: Select to display legend rows in colors. + ## Scatter examples ### Cross-measurement correlation diff --git a/content/influxdb/v2.0/visualize-data/visualization-types/single-stat.md b/content/influxdb/v2.0/visualize-data/visualization-types/single-stat.md index 73af8638a..654a4a2a1 100644 --- a/content/influxdb/v2.0/visualize-data/visualization-types/single-stat.md +++ b/content/influxdb/v2.0/visualize-data/visualization-types/single-stat.md @@ -4,7 +4,7 @@ list_title: Single stat list_image: /img/influxdb/2-0-visualizations-single-stat-example.png description: > The Single Stat view displays the most recent value of the specified time series as a numerical value. -weight: 205 +weight: 202 menu: influxdb_2_0: name: Single Stat diff --git a/content/influxdb/v2.0/visualize-data/visualization-types/table.md b/content/influxdb/v2.0/visualize-data/visualization-types/table.md index 51c44257b..a743a3e2c 100644 --- a/content/influxdb/v2.0/visualize-data/visualization-types/table.md +++ b/content/influxdb/v2.0/visualize-data/visualization-types/table.md @@ -5,7 +5,7 @@ list_image: /img/influxdb/2-0-visualizations-table-example.png description: > The Table option displays the results of queries in a tabular view, which is sometimes easier to analyze than graph views of data. -weight: 207 +weight: 202 menu: influxdb_2_0: name: Table @@ -30,13 +30,20 @@ Tables are identified by their [group key](/influxdb/v2.0/query-data/get-started To view **Table** controls, click **{{< icon "gear" >}} Customize** next to the visualization dropdown. +###### Formatting - **Default Sort Field**: Select the default sort field. Default is **time**. - **Time Format**: Select the time format. Options include: {{< ui/timestamp-formats >}} - + - **Decimal Places**: Enter the number of decimal places. Default (empty field) is **unlimited**. - **Auto** or **Custom**: Enable or disable auto-setting. +###### Colorized Thresholds +- **Base Color**: Select a base or background color from the selection list. +- **Add a Threshold**: Change the color of the table based on the current value. + - **Value is**: Enter the value at which the table should appear in the selected color. + Choose a color from the dropdown menu next to the value. + ###### Column Settings - **First Column**: Toggle to **Fixed** to lock the first column so that the listings are always visible. Threshold settings do not apply in the first column when locked. @@ -46,12 +53,6 @@ the visualization dropdown. - [additional]: Enter name for each additional column. - Change the order of the columns by dragging to the desired position. -###### Colorized Thresholds -- **Base Color**: Select a base or background color from the selection list. -- **Add a Threshold**: Change the color of the table based on the current value. - - **Value is**: Enter the value at which the table should appear in the selected color. - Choose a color from the dropdown menu next to the value. - ## Table examples Tables are helpful when displaying many human-readable metrics in a dashboard such as cluster statistics or log messages. diff --git a/content/influxdb/v2.0/write-data/developer-tools/_index.md b/content/influxdb/v2.0/write-data/developer-tools/_index.md index cab5f9ff2..54b0677f5 100644 --- a/content/influxdb/v2.0/write-data/developer-tools/_index.md +++ b/content/influxdb/v2.0/write-data/developer-tools/_index.md @@ -1,10 +1,10 @@ --- -title: Developer tools +title: Write data with developer tools seotitle: Write data to InfluxDB with developer tools list_title: Use developer tools weight: 102 description: > - Write data to InfluxDB with developer tools. + Use developer tools such as the InfluxDB API and `influx` CLI to write data to InfluxDB. menu: influxdb_2_0: name: Developer tools diff --git a/content/influxdb/v2.0/write-data/developer-tools/api.md b/content/influxdb/v2.0/write-data/developer-tools/api.md index ca22c4ff6..ae097625e 100644 --- a/content/influxdb/v2.0/write-data/developer-tools/api.md +++ b/content/influxdb/v2.0/write-data/developer-tools/api.md @@ -1,10 +1,8 @@ --- -title: Use InfluxDB API -seotitle: Write data with the InfluxDB API -list_title: Write data with the InfluxDB API +title: Write data with the InfluxDB API weight: 206 description: > - Write data to InfluxDB using the InfluxDB API. + Use the `/write` endpoint of the InfluxDB API to write data to InfluxDB. menu: influxdb_2_0: name: InfluxDB API diff --git a/content/influxdb/v2.0/write-data/developer-tools/client-libraries.md b/content/influxdb/v2.0/write-data/developer-tools/client-libraries.md index 2b40f5f13..7944c6fc6 100644 --- a/content/influxdb/v2.0/write-data/developer-tools/client-libraries.md +++ b/content/influxdb/v2.0/write-data/developer-tools/client-libraries.md @@ -1,10 +1,8 @@ --- -title: Client libraries -seotitle: Write data with client libraries -list_title: Write data with client libraries +title: Write data with client libraries weight: 204 description: > - Write data to InfluxDB using client libraries. + Use client libraries to write data to InfluxDB. menu: influxdb_2_0: name: Client libraries diff --git a/content/influxdb/v2.0/write-data/developer-tools/influx-cli.md b/content/influxdb/v2.0/write-data/developer-tools/influx-cli.md index bec4520d7..ed423b565 100644 --- a/content/influxdb/v2.0/write-data/developer-tools/influx-cli.md +++ b/content/influxdb/v2.0/write-data/developer-tools/influx-cli.md @@ -1,10 +1,8 @@ --- -title: Use influx CLI -seotitle: Write data with the influx CLI -list_title: Write data with the influx CLI +title: Write data with the influx CLI weight: 205 description: > - Write data to InfluxDB using the `influx` CLI. + Use the `influx write` command to write data to InfluxDB from the command line. menu: influxdb_2_0: name: Influx CLI diff --git a/content/influxdb/v2.0/write-data/developer-tools/third-party-solutions.md b/content/influxdb/v2.0/write-data/developer-tools/third-party-solutions.md index 76966082d..4dffdd2ca 100644 --- a/content/influxdb/v2.0/write-data/developer-tools/third-party-solutions.md +++ b/content/influxdb/v2.0/write-data/developer-tools/third-party-solutions.md @@ -1,7 +1,5 @@ --- -title: Third-party technologies -seotitle: Write data with third-party technologies -list_title: Write data with third-party technologies +title: Write data with third-party technologies weight: 103 description: > Write data to InfluxDB using third-party developer tools. diff --git a/content/influxdb/v2.0/write-data/no-code/_index.md b/content/influxdb/v2.0/write-data/no-code/_index.md index a98751b09..f310822fc 100644 --- a/content/influxdb/v2.0/write-data/no-code/_index.md +++ b/content/influxdb/v2.0/write-data/no-code/_index.md @@ -1,10 +1,8 @@ --- -title: No-code solutions -seotitle: Write data to InfluxDB without coding -list_title: Write data to InfluxDB without coding +title: Write data to InfluxDB without coding weight: 101 description: > - Write data to InfluxDB without writing code. + Use existing tools to write data to InfluxDB without writing code. aliases: - /influxdb/v2.0/collect-data/advanced-telegraf - /influxdb/v2.0/collect-data/use-telegraf diff --git a/content/influxdb/v2.0/write-data/no-code/third-party.md b/content/influxdb/v2.0/write-data/no-code/third-party.md index fbffd9157..5f4835a9d 100644 --- a/content/influxdb/v2.0/write-data/no-code/third-party.md +++ b/content/influxdb/v2.0/write-data/no-code/third-party.md @@ -1,10 +1,8 @@ --- -title: Third-party technologies -seotitle: Write data with third-party technologies -list_title: Write data with third-party technologies +title: Write data with no-code third-party technologies weight: 103 description: > - Write data to InfluxDB using third-party technologies. + Write data to InfluxDB using third-party technologies that do not require coding. menu: influxdb_2_0: name: Third-party technologies diff --git a/content/influxdb/v2.0/write-data/no-code/use-telegraf/_index.md b/content/influxdb/v2.0/write-data/no-code/use-telegraf/_index.md index 299d8064f..2bb71ae8a 100644 --- a/content/influxdb/v2.0/write-data/no-code/use-telegraf/_index.md +++ b/content/influxdb/v2.0/write-data/no-code/use-telegraf/_index.md @@ -1,5 +1,5 @@ --- -title: Telegraf (agent) +title: Use Telegraf to write data seotitle: Use the Telegraf agent to collect and write data list_title: Use the Telegraf agent weight: 101 diff --git a/data/notifications.yaml b/data/notifications.yaml index 9f8d6bdc4..ef0f627bf 100644 --- a/data/notifications.yaml +++ b/data/notifications.yaml @@ -7,14 +7,13 @@ # message: | # Markdown message content. -- id: v2-ga +- id: v2-cloud-upgrade level: note scope: - /influxdb/v1 message: | - ### InfluxDB OSS 2.0 now generally available! + ### Upgrade to InfluxDB Cloud or InfluxDB 2.0! + **InfluxDB Cloud** and **InfluxDB OSS 2.0** ready for production. - **InfluxDB OSS 2.0** is now generally available and ready for production use. - See the [InfluxDB OSS 2.0 release notes](/influxdb/v2.0/reference/release-notes/influxdb/). - - For information about upgrading to InfluxDB OSS 2.0, see [Upgrade from InfluxDB OSS 1.x to 2.0](/influxdb/v2.0/upgrade/v1-to-v2/) \ No newline at end of file + - [Upgrade to InfluxDB Cloud](/influxdb/cloud/upgrade/v1-to-cloud/) + - [Upgrade to InfluxDB OSS 2.0](/influxdb/v2.0/upgrade/v1-to-v2/) \ No newline at end of file diff --git a/layouts/shortcodes/caption.html b/layouts/shortcodes/caption.html new file mode 100644 index 000000000..0c991cbae --- /dev/null +++ b/layouts/shortcodes/caption.html @@ -0,0 +1,2 @@ +{{ $_hugo_config := `{ "version": 1 }` }} +
{{ .Inner }}
\ No newline at end of file diff --git a/layouts/shortcodes/cli/influxd-flags.md b/layouts/shortcodes/cli/influxd-flags.md index aae4a24c7..b5fb87889 100644 --- a/layouts/shortcodes/cli/influxd-flags.md +++ b/layouts/shortcodes/cli/influxd-flags.md @@ -1,19 +1,22 @@ - - [\--assets-path](/influxdb/v2.0/reference/config-options/#assets-path) - [\--bolt-path](/influxdb/v2.0/reference/config-options/#bolt-path) - [\--e2e-testing](/influxdb/v2.0/reference/config-options/#e2e-testing) - [\--engine-path](/influxdb/v2.0/reference/config-options/#engine-path) - -h, \-\-help - [\--http-bind-address](/influxdb/v2.0/reference/config-options/#http-bind-address) +- [\--http-idle-timeout](/influxdb/v2.0/reference/config-options/#http-idle-timeout) +- [\--http-read-header-timeout](/influxdb/v2.0/reference/config-options/#http-read-header-timeout) +- [\--http-read-timeout](/influxdb/v2.0/reference/config-options/#http-read-timeout) +- [\--http-write-timeout](/influxdb/v2.0/reference/config-options/#http-write-timeout) - [\--influxql-max-select-buckets](/influxdb/v2.0/reference/config-options/#influxql-max-select-buckets) - [\--influxql-max-select-point](/influxdb/v2.0/reference/config-options/#influxql-max-select-point) - [\--influxql-max-select-series](/influxdb/v2.0/reference/config-options/#influxql-max-select-series) - [\--log-level](/influxdb/v2.0/reference/config-options/#log-level) +- [\--metrics-disabled](/influxdb/v2.0/reference/config-options/#metrics-disabled) - [\--nats-max-payload-bytes](/influxdb/v2.0/reference/config-options/#nats-max-payload-bytes) - [\--nats-port](/influxdb/v2.0/reference/config-options/#nats-port) -- [\--new-meta-store](/influxdb/v2.0/reference/config-options/#new-meta-store) -- [\--new-meta-store-read-only](/influxdb/v2.0/reference/config-options/#new-meta-store-read-only) - [\--no-tasks](/influxdb/v2.0/reference/config-options/#no-tasks) +- [\--pprof-disabled](/influxdb/v2.0/reference/config-options/#pprof-disabled) - [\--query-concurrency](/influxdb/v2.0/reference/config-options/#query-concurrency) - [\--query-initial-memory-bytes](/influxdb/v2.0/reference/config-options/#query-initial-memory-bytes) - [\--query-max-memory-bytes](/influxdb/v2.0/reference/config-options/#query-max-memory-bytes) @@ -38,6 +41,8 @@ - [\--storage-tsm-use-madv-willneed](/influxdb/v2.0/reference/config-options/#storage-tsm-use-madv-willneed) - [\--storage-validate-keys](/influxdb/v2.0/reference/config-options/#storage-validate-keys) - [\--storage-wal-fsync-delay](/influxdb/v2.0/reference/config-options/#storage-wal-fsync-delay) +- [\--store](/influxdb/v2.0/reference/config-options/#store) +- [\--testing-always-allow-setup](/influxdb/v2.0/reference/config-options/#testing-always-allow-setup) - [\--tls-cert](/influxdb/v2.0/reference/config-options/#tls-cert) - [\--tls-key](/influxdb/v2.0/reference/config-options/#tls-key) - [\--tls-min-version](/influxdb/v2.0/reference/config-options/#tls-min-version) @@ -48,4 +53,4 @@ - [\--vault-client-timeout](/influxdb/v2.0/reference/config-options/#vault-client-timeout) - [\--vault-skip-verify](/influxdb/v2.0/reference/config-options/#vault-skip-verify) - [\--vault-tls-server-name](/influxdb/v2.0/reference/config-options/#vault-tls-server-name) -- [\--vault-token](/influxdb/v2.0/reference/config-options/#vault-token) \ No newline at end of file +- [\--vault-token](/influxdb/v2.0/reference/config-options/#vault-token) diff --git a/layouts/shortcodes/filesystem-diagram.html b/layouts/shortcodes/filesystem-diagram.html new file mode 100644 index 000000000..f92903222 --- /dev/null +++ b/layouts/shortcodes/filesystem-diagram.html @@ -0,0 +1,4 @@ +{{ $_hugo_config := `{ "version": 1 }` }} +
+{{ .Inner }} +
diff --git a/layouts/shortcodes/html-diagram/shards.html b/layouts/shortcodes/html-diagram/shards.html new file mode 100644 index 000000000..0c5a56d3d --- /dev/null +++ b/layouts/shortcodes/html-diagram/shards.html @@ -0,0 +1,33 @@ +
+
+

0d

+

1d

+

2d

+

3d

+

4d

+
+
+
+
+
+
+
+
+
+

Shard group

+

Shard

+
+
+

Shard group

+

Shard

+
+
+

Shard group

+

Shard

+
+
+

Shard group

+

Shard

+
+
+
\ No newline at end of file